#!/usr/bin/env python3 # © Copyright 2021-2022, Scott Gasch """Some general exceptions used elsewhere in the package.""" # 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): """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)