#[non_exhaustive]pub enum ValueWireDecodeError {
Budget(BudgetError<JsonResource, usize>),
Quantity {
resource: JsonResource,
source: QuantityConversionError,
},
Syntax(JsonSyntaxError),
UnsupportedVersion {
expected: u8,
actual: u8,
},
InvalidJson(Error),
}Expand description
Error produced by a bounded crate::ValueWireV1 JSON decoder.
§Examples
use qubit_value::{ValueWireDecodeError, ValueWireV1};
let error = ValueWireV1::decode_json_slice(b"{").unwrap_err();
assert!(matches!(
error,
ValueWireDecodeError::Syntax(_) | ValueWireDecodeError::InvalidJson(_)
));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.
Budget(BudgetError<JsonResource, usize>)
The JSON document exceeded one configured resource budget.
Tuple Fields
§
0: BudgetError<JsonResource, usize>Budget violation reported by the bounded JSON decoder.
Quantity
A native JSON measurement could not be represented by the budget quantity type.
Fields
§
resource: JsonResourceResource whose measurement failed.
§
source: QuantityConversionErrorNative measurement conversion failure.
Syntax(JsonSyntaxError)
The bounded input contains JSON syntax errors with source location.
Tuple Fields
§
0: JsonSyntaxErrorSyntax error with its source location preserved.
UnsupportedVersion
The envelope declares a wire version that this decoder does not support.
Fields
InvalidJson(Error)
The bounded input is not a valid V1 JSON wire value.
Trait Implementations§
Source§impl Debug for ValueWireDecodeError
impl Debug for ValueWireDecodeError
Source§impl Display for ValueWireDecodeError
impl Display for ValueWireDecodeError
Source§impl Error for ValueWireDecodeError
impl Error for ValueWireDecodeError
Source§fn source(&self) -> Option<&(dyn Error + 'static)>
fn source(&self) -> Option<&(dyn Error + 'static)>
Returns the lower-level source of this error, if any. Read more
1.0.0 · Source§fn description(&self) -> &str
fn description(&self) -> &str
👎Deprecated since 1.42.0:
use the Display impl or to_string()
Source§impl From<Error> for ValueWireDecodeError
impl From<Error> for ValueWireDecodeError
Source§impl From<JsonDecodeError> for ValueWireDecodeError
impl From<JsonDecodeError> for ValueWireDecodeError
Source§fn from(error: JsonDecodeError<JsonResource>) -> Self
fn from(error: JsonDecodeError<JsonResource>) -> Self
Converts to this type from the input type.
Auto Trait Implementations§
impl !RefUnwindSafe for ValueWireDecodeError
impl !UnwindSafe for ValueWireDecodeError
impl Freeze for ValueWireDecodeError
impl Send for ValueWireDecodeError
impl Sync for ValueWireDecodeError
impl Unpin for ValueWireDecodeError
impl UnsafeUnpin for ValueWireDecodeError
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
Source§impl<T> IntoValueDefault<T> for T
impl<T> IntoValueDefault<T> for T
Source§fn into_value_default(self) -> T
fn into_value_default(self) -> T
Converts this argument into the default value. Read more