X-Git-Url: https://wannabe.guru.org/gitweb/?a=blobdiff_plain;f=exceptions.py;h=bd499886221ba55e044a739e835fdc4af8c98c6e;hb=dab4a70ccc2ad9c4a708fc738f07ec8022b3d406;hp=3ce94d365774422252ab591303907d31ff65d1ba;hpb=bf508f86e1576736d18cab08edbca834456045ee;p=python_utils.git diff --git a/exceptions.py b/exceptions.py index 3ce94d3..bd49988 100644 --- a/exceptions.py +++ b/exceptions.py @@ -1,13 +1,31 @@ #!/usr/bin/env python3 +# © Copyright 2021-2022, Scott Gasch + +"""Some exceptions used elsewhere.""" + +# This module is commonly used by others in here and should avoid +# taking any unnecessary dependencies back on them. + + class PreconditionException(AssertionError): + """Use to indicate function preconditions violated.""" + pass class PostconditionException(AssertionError): + """Use to indicate function postconditions violated.""" + pass class TimeoutError(Exception): - pass + """Use to indicate an operation that timed out.""" + + def __init__(self, value: str = "Timed out"): + super().__init__() + self.value = value + def __str__(self): + return repr(self.value)