aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSerhiy Storchaka <storchaka@gmail.com>2018-12-31 09:56:21 +0200
committerGitHub <noreply@github.com>2018-12-31 09:56:21 +0200
commit5c117dd227e1b4c4f0a62564d8592f1ba45c91eb (patch)
tree49ee8db6d0e8e6dd8551ab40be4cd7c52909c29f /Lib/abc.py
parentFix typo in test module usage message (GH-11374) (diff)
downloadcpython-5c117dd227e1b4c4f0a62564d8592f1ba45c91eb.tar.gz
cpython-5c117dd227e1b4c4f0a62564d8592f1ba45c91eb.tar.bz2
cpython-5c117dd227e1b4c4f0a62564d8592f1ba45c91eb.zip
bpo-35609: Remove examples for deprecated decorators in the abc module. (GH-11355)
Diffstat (limited to 'Lib/abc.py')
-rw-r--r--Lib/abc.py51
1 files changed, 5 insertions, 46 deletions
diff --git a/Lib/abc.py b/Lib/abc.py
index 7094141277a..431b64040a6 100644
--- a/Lib/abc.py
+++ b/Lib/abc.py
@@ -11,7 +11,8 @@ def abstractmethod(funcobj):
class that has a metaclass derived from ABCMeta cannot be
instantiated unless all of its abstract methods are overridden.
The abstract methods can be called using any of the normal
- 'super' call mechanisms.
+ 'super' call mechanisms. abstractmethod() may be used to declare
+ abstract methods for properties and descriptors.
Usage:
@@ -27,17 +28,7 @@ def abstractmethod(funcobj):
class abstractclassmethod(classmethod):
"""A decorator indicating abstract classmethods.
- Similar to abstractmethod.
-
- Usage:
-
- class C(metaclass=ABCMeta):
- @abstractclassmethod
- def my_abstract_classmethod(cls, ...):
- ...
-
- 'abstractclassmethod' is deprecated. Use 'classmethod' with
- 'abstractmethod' instead.
+ Deprecated, use 'classmethod' with 'abstractmethod' instead.
"""
__isabstractmethod__ = True
@@ -50,17 +41,7 @@ class abstractclassmethod(classmethod):
class abstractstaticmethod(staticmethod):
"""A decorator indicating abstract staticmethods.
- Similar to abstractmethod.
-
- Usage:
-
- class C(metaclass=ABCMeta):
- @abstractstaticmethod
- def my_abstract_staticmethod(...):
- ...
-
- 'abstractstaticmethod' is deprecated. Use 'staticmethod' with
- 'abstractmethod' instead.
+ Deprecated, use 'staticmethod' with 'abstractmethod' instead.
"""
__isabstractmethod__ = True
@@ -73,29 +54,7 @@ class abstractstaticmethod(staticmethod):
class abstractproperty(property):
"""A decorator indicating abstract properties.
- Requires that the metaclass is ABCMeta or derived from it. A
- class that has a metaclass derived from ABCMeta cannot be
- instantiated unless all of its abstract properties are overridden.
- The abstract properties can be called using any of the normal
- 'super' call mechanisms.
-
- Usage:
-
- class C(metaclass=ABCMeta):
- @abstractproperty
- def my_abstract_property(self):
- ...
-
- This defines a read-only property; you can also define a read-write
- abstract property using the 'long' form of property declaration:
-
- class C(metaclass=ABCMeta):
- def getx(self): ...
- def setx(self, value): ...
- x = abstractproperty(getx, setx)
-
- 'abstractproperty' is deprecated. Use 'property' with 'abstractmethod'
- instead.
+ Deprecated, use 'property' with 'abstractmethod' instead.
"""
__isabstractmethod__ = True