extended_data.primitives.formats.errors

Shared exceptions for Tier 1 format decoders.

Module Contents

Functions

invalid_utf8_error

Return a decode error for invalid UTF-8 input bytes.

_get_error_reason

Extract a parser reason without including source snippets.

_get_error_position

Extract one-based line and column data when the parser exposes it.

_as_int

Return an integer value plus offset, or None when unavailable.

API

exception extended_data.primitives.formats.errors.DataDecodeError(format_name: str, *, reason: str | None = None, line: int | None = None, column: int | None = None)

Bases: ValueError

Raised when a supported data format cannot be decoded safely.

Initialization

Initialize a sanitized decode error.

classmethod from_exception(format_name: str, exc: BaseException) extended_data.primitives.formats.errors.DataDecodeError

Build a sanitized decode error from a parser exception.

extended_data.primitives.formats.errors.invalid_utf8_error(format_name: str) extended_data.primitives.formats.errors.DataDecodeError

Return a decode error for invalid UTF-8 input bytes.

extended_data.primitives.formats.errors._get_error_reason(exc: BaseException) str

Extract a parser reason without including source snippets.

extended_data.primitives.formats.errors._get_error_position(exc: BaseException) tuple[int | None, int | None]

Extract one-based line and column data when the parser exposes it.

extended_data.primitives.formats.errors._as_int(value: Any, *, offset: int = 0) int | None

Return an integer value plus offset, or None when unavailable.