]> git.ipfire.org Git - thirdparty/Python/cpython.git/commitdiff
bpo-34538: Remove Exception subclassing from tutorial (GH-30361)
authorMiss Islington (bot) <31488909+miss-islington@users.noreply.github.com>
Mon, 3 Jan 2022 23:19:29 +0000 (15:19 -0800)
committerGitHub <noreply@github.com>
Mon, 3 Jan 2022 23:19:29 +0000 (15:19 -0800)
Remove the bit about subclassing exceptions.

Documentation PR can skip the NEWS label.

Automerge-Triggered-By: GH:iritkatriel
(cherry picked from commit 2db56130631255ca2eb504519430fb2f1fe789e9)

Co-authored-by: Hugo van Kemenade <hugovk@users.noreply.github.com>
Doc/tutorial/errors.rst

index 4e2ed1d10a65c673c8aa04361539eed1ec5b5fb4..542593ce731e4c86a8acde73fa6ebb7f3693c410 100644 (file)
@@ -326,41 +326,7 @@ be derived from the :exc:`Exception` class, either directly or indirectly.
 
 Exception classes can be defined which do anything any other class can do, but
 are usually kept simple, often only offering a number of attributes that allow
-information about the error to be extracted by handlers for the exception.  When
-creating a module that can raise several distinct errors, a common practice is
-to create a base class for exceptions defined by that module, and subclass that
-to create specific exception classes for different error conditions::
-
-   class Error(Exception):
-       """Base class for exceptions in this module."""
-       pass
-
-   class InputError(Error):
-       """Exception raised for errors in the input.
-
-       Attributes:
-           expression -- input expression in which the error occurred
-           message -- explanation of the error
-       """
-
-       def __init__(self, expression, message):
-           self.expression = expression
-           self.message = message
-
-   class TransitionError(Error):
-       """Raised when an operation attempts a state transition that's not
-       allowed.
-
-       Attributes:
-           previous -- state at beginning of transition
-           next -- attempted new state
-           message -- explanation of why the specific transition is not allowed
-       """
-
-       def __init__(self, previous, next, message):
-           self.previous = previous
-           self.next = next
-           self.message = message
+information about the error to be extracted by handlers for the exception.
 
 Most exceptions are defined with names that end in "Error", similar to the
 naming of the standard exceptions.