#[non_exhaustive]pub enum JsonSerializationError {
Serde(JsonError),
ExtnCall0Arguments(ExtnCall0Arguments),
ReservedKey(ReservedKey),
UnexpectedRestrictedExprKind(UnexpectedRestrictedExprKind),
Residual(Residual),
ExtnCall2OrMoreArguments(ExtnCall2OrMoreArguments),
}Expand description
Errors thrown during serialization to JSON
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.
Serde(JsonError)
Error thrown by serde_json
ExtnCall0Arguments(ExtnCall0Arguments)
Extension-function calls with 0 arguments are not currently supported in our JSON format.
ReservedKey(ReservedKey)
Encountered a Record which can’t be serialized to JSON because it
contains a key which is reserved as a JSON escape.
UnexpectedRestrictedExprKind(UnexpectedRestrictedExprKind)
Encountered an ExprKind which we didn’t expect. Either a case is
missing in CedarValueJson::from_expr(), or an internal invariant was
violated and there is a non-restricted expression in RestrictedExpr
Residual(Residual)
Encountered a (partial-evaluation) residual which can’t be encoded in JSON
ExtnCall2OrMoreArguments(ExtnCall2OrMoreArguments)
Extension-function calls with 2 or more arguments are not currently supported in our JSON format. Cedar should not throw any error of this variant after #1697
Trait Implementations§
Source§impl Debug for JsonSerializationError
impl Debug for JsonSerializationError
Source§impl Diagnostic for JsonSerializationError
impl Diagnostic for JsonSerializationError
Source§fn code(&self) -> Option<Box<dyn Display + '_>>
fn code(&self) -> Option<Box<dyn Display + '_>>
Unique diagnostic code that can be used to look up more information
about this
Diagnostic. Ideally also globally unique, and documented
in the toplevel crate’s documentation for easy searching. Rust path
format (foo::bar::baz) is recommended, but more classic codes like
E0123 or enums will work just fine.Source§fn help(&self) -> Option<Box<dyn Display + '_>>
fn help(&self) -> Option<Box<dyn Display + '_>>
Additional help text related to this
Diagnostic. Do you have any
advice for the poor soul who’s just run into this issue?Source§fn severity(&self) -> Option<Severity>
fn severity(&self) -> Option<Severity>
Diagnostic severity. This may be used by
ReportHandlers to change the display format
of this diagnostic. Read moreSource§fn labels(&self) -> Option<Box<dyn Iterator<Item = LabeledSpan> + '_>>
fn labels(&self) -> Option<Box<dyn Iterator<Item = LabeledSpan> + '_>>
Labels to apply to this
Diagnostic’s Diagnostic::source_codeSource§fn source_code(&self) -> Option<&dyn SourceCode>
fn source_code(&self) -> Option<&dyn SourceCode>
Source code to apply this
Diagnostic’s Diagnostic::labels to.Additional related
Diagnostics.Source§fn url(&self) -> Option<Box<dyn Display + '_>>
fn url(&self) -> Option<Box<dyn Display + '_>>
URL to visit for a more detailed explanation/help about this
Diagnostic.Source§fn diagnostic_source(&self) -> Option<&dyn Diagnostic>
fn diagnostic_source(&self) -> Option<&dyn Diagnostic>
The cause of the error.
Source§impl Display for JsonSerializationError
impl Display for JsonSerializationError
Source§impl Error for JsonSerializationError
impl Error for JsonSerializationError
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 JsonSerializationError
impl From<Error> for JsonSerializationError
Source§impl From<JsonError> for JsonSerializationError
impl From<JsonError> for JsonSerializationError
Source§impl From<JsonSerializationError> for EntitiesError
impl From<JsonSerializationError> for EntitiesError
Source§fn from(source: JsonSerializationError) -> Self
fn from(source: JsonSerializationError) -> Self
Converts to this type from the input type.
Auto Trait Implementations§
impl Freeze for JsonSerializationError
impl !RefUnwindSafe for JsonSerializationError
impl Send for JsonSerializationError
impl Sync for JsonSerializationError
impl Unpin for JsonSerializationError
impl !UnwindSafe for JsonSerializationError
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> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more