#[non_exhaustive]pub enum ErrorCode {
Show 45 variants
InvalidLimits,
UnexpectedEof,
LengthOverflow,
TrailingBytes,
AllocationFailed,
ArrayLenMismatch,
MapLenMismatch,
DepthLimitExceeded,
TotalItemsLimitExceeded,
ArrayLenLimitExceeded,
MapLenLimitExceeded,
BytesLenLimitExceeded,
TextLenLimitExceeded,
MessageLenLimitExceeded,
ReservedAdditionalInfo,
IndefiniteLengthForbidden,
NonCanonicalEncoding,
MapKeyMustBeText,
DuplicateMapKey,
NonCanonicalMapOrder,
NonCanonicalSetOrder,
ForbiddenOrMalformedTag,
BignumNotCanonical,
BignumMustBeOutsideSafeRange,
UnsupportedSimpleValue,
IntegerOutsideSafeRange,
Utf8Invalid,
NegativeZeroForbidden,
NonCanonicalNaN,
SerdeError,
ExpectedMap,
ExpectedArray,
ExpectedInteger,
ExpectedText,
ExpectedBytes,
ExpectedBool,
ExpectedNull,
ExpectedFloat,
ExpectedEnum,
UnknownEnumVariant,
PatchConflict,
IndexOutOfBounds,
InvalidQuery,
MissingKey,
MalformedCanonical,
}Expand description
A structured error code identifying the reason a CBOR item was rejected.
This enum is intentionally stable and string-free to support no_std and to remain hot-path friendly.
Variants (Non-exhaustive)§
This enum is marked as non-exhaustive
InvalidLimits
Invalid configured limits.
UnexpectedEof
Unexpected end-of-input while decoding.
LengthOverflow
Arithmetic overflow while computing a length/offset.
TrailingBytes
Input contains trailing bytes after the single CBOR data item.
AllocationFailed
Memory allocation failed while decoding into owned structures.
ArrayLenMismatch
Array builder length mismatch (encoder).
MapLenMismatch
Map builder length mismatch (encoder).
DepthLimitExceeded
Nesting depth limit exceeded.
TotalItemsLimitExceeded
Total items limit exceeded.
ArrayLenLimitExceeded
Array length exceeds limits.
MapLenLimitExceeded
Map length exceeds limits.
BytesLenLimitExceeded
Byte string length exceeds limits.
TextLenLimitExceeded
Text string length exceeds limits.
MessageLenLimitExceeded
Total input length exceeds limits.
ReservedAdditionalInfo
Reserved additional-info value (28..30) was used.
IndefiniteLengthForbidden
Indefinite-length encoding was used where forbidden.
NonCanonicalEncoding
Non-canonical (non-shortest) integer/length encoding was used.
MapKeyMustBeText
Map key was not a CBOR text string.
DuplicateMapKey
Duplicate map key detected.
NonCanonicalMapOrder
Map keys are not in canonical order.
NonCanonicalSetOrder
Set elements are not in strict canonical set order.
ForbiddenOrMalformedTag
A forbidden tag was used, or the tag structure is malformed.
BignumNotCanonical
Bignum magnitude is not canonical (empty or leading zero).
BignumMustBeOutsideSafeRange
Bignum was used for a value within the safe integer range.
UnsupportedSimpleValue
Unsupported CBOR simple value.
IntegerOutsideSafeRange
Integer outside the int_safe range.
Utf8Invalid
Invalid UTF-8 in a text string.
NegativeZeroForbidden
Float64 negative zero encoding is forbidden.
NonCanonicalNaN
Float64 NaN encoding is not canonical.
SerdeError
Serde conversion failed.
ExpectedMap
Expected a map at the current location.
ExpectedArray
Expected an array at the current location.
ExpectedInteger
Expected an integer (safe or bignum) at the current location.
ExpectedText
Expected a text string at the current location.
ExpectedBytes
Expected a byte string at the current location.
ExpectedBool
Expected a boolean at the current location.
ExpectedNull
Expected a null at the current location.
ExpectedFloat
Expected a float64 at the current location.
ExpectedEnum
Expected a CBOR value matching an untagged enum variant.
UnknownEnumVariant
Unknown enum variant key.
PatchConflict
Patch operations overlap or conflict.
IndexOutOfBounds
Array index is out of bounds.
InvalidQuery
Invalid query arguments (e.g., output slice length mismatch).
MissingKey
Required key missing from map.
MalformedCanonical
Malformed canonical CBOR during query traversal.