#[non_exhaustive]pub enum JsonMaterializationErrorReason {
DuplicateKey,
DepthLimit {
limit: usize,
},
InvalidNumber,
}Expand description
Describes why an admitted unique-key document could not be materialized.
The reason is available independently of diagnostic source retention and never contains input-derived text.
§Examples
use qubit_json::decode::JsonMaterializationErrorReason;
let reason = JsonMaterializationErrorReason::DuplicateKey;
assert_eq!(reason, JsonMaterializationErrorReason::DuplicateKey);Variants (Non-exhaustive)§
This enum is marked as non-exhaustive
Non-exhaustive enums could have additional variants added in future. Therefore, when matching against variants of non-exhaustive enums, an extra wildcard arm must be added to account for any future variants.
DuplicateKey
A decoded object key appeared more than once.
DepthLimit
Historical compatibility reason; the shared builder no longer produces it.
InvalidNumber
An admitted number could not be represented by the intermediate tree.
Trait Implementations§
impl Copy for JsonMaterializationErrorReason
impl Eq for JsonMaterializationErrorReason
impl StructuralPartialEq for JsonMaterializationErrorReason
Auto Trait Implementations§
impl Forget for JsonMaterializationErrorReason
impl Freeze for JsonMaterializationErrorReason
impl RefUnwindSafe for JsonMaterializationErrorReason
impl Send for JsonMaterializationErrorReason
impl Sync for JsonMaterializationErrorReason
impl Unpin for JsonMaterializationErrorReason
impl UnsafeUnpin for JsonMaterializationErrorReason
impl UnwindSafe for JsonMaterializationErrorReason
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more