Source code for banterbot.exceptions.format_mismatch_error

from typing import Optional


[docs] class FormatMismatchError(ValueError): """ Exception raised when the output format from an external API does not match the expected format. This can be used to signal a mismatch in the expected structure or content type of the data returned from an API call. Args: expression (Optional[str]): The input expression or API response that caused the error. This is optional and used for providing context in the error message. message (Optional[str]): An explanation of the error. Defaults to a standard message about format mismatch. Raises: FormatMismatchError: An error occurred due to a mismatch in the expected output format. """ def __init__(self, expression: Optional[str] = None, message: Optional[str] = None) -> None: self.expression = expression self.message = message or "An error occurred due to a mismatch in the expected format" error_message: str = f"{self.expression}: {self.message}" if expression else self.message super().__init__(error_message) def __str__(self) -> str: return self.message