Source code for hyperframe.exceptions

"""
Exceptions that can be thrown by hyperframe.
"""
from __future__ import annotations


[docs] class HyperframeError(Exception): """ The base class for all exceptions for the hyperframe module. .. versionadded:: 6.0.0 """
[docs] class UnknownFrameError(HyperframeError): """ A frame of unknown type was received. .. versionchanged:: 6.0.0 Changed base class from `ValueError` to :class:`HyperframeError` """ def __init__(self, frame_type: int, length: int) -> None: #: The type byte of the unknown frame that was received. self.frame_type = frame_type #: The length of the data portion of the unknown frame. self.length = length def __str__(self) -> str: return ( f"UnknownFrameError: Unknown frame type 0x{self.frame_type:X} received, length {self.length} bytes" )
[docs] class InvalidPaddingError(HyperframeError): """ A frame with invalid padding was received. .. versionchanged:: 6.0.0 Changed base class from `ValueError` to :class:`HyperframeError` """
[docs] class InvalidFrameError(HyperframeError): """ Parsing a frame failed because the data was not laid out appropriately. .. versionadded:: 3.0.2 .. versionchanged:: 6.0.0 Changed base class from `ValueError` to :class:`HyperframeError` """
[docs] class InvalidDataError(HyperframeError): """ Content or data of a frame was is invalid or violates the specification. .. versionadded:: 6.0.0 """