#[non_exhaustive]pub enum Error {
Show 63 variants
S0101UnterminatedStringLiteral(usize),
S0102LexedNumberOutOfRange(usize, String),
S0103UnsupportedEscape(usize, char),
S0104InvalidUnicodeEscape(usize),
S0105UnterminatedQuoteProp(usize),
S0106UnterminatedComment(usize),
S0201SyntaxError(usize, String),
S0202UnexpectedToken(usize, String, String),
S0204UnknownOperator(usize, String),
S0203ExpectedTokenBeforeEnd(usize, String),
S0208InvalidFunctionParam(usize, String),
S0209InvalidPredicate(usize),
S0210MultipleGroupBy(usize),
S0211InvalidUnary(usize, String),
S0212ExpectedVarLeft(usize),
S0213InvalidStep(usize, String),
S0214ExpectedVarRight(usize, String),
S0215BindingAfterPredicates(usize),
S0216BindingAfterSort(usize),
S0301EmptyRegex(usize),
S0302UnterminatedRegex(usize),
S0303InvalidRegex(usize, String),
D1001NumberOfOutRange(f64),
D1002NegatingNonNumeric(usize, String),
D1004ZeroLengthMatch(usize),
D1009MultipleKeys(usize, String),
D2014RangeOutOfBounds(usize, isize),
D3001StringNotFinite(usize),
D3010EmptyPattern(usize),
D3011NegativeLimit(usize),
D3012InvalidReplacementType(usize),
D3020NegativeLimit(usize),
D3030NonNumericCast(usize, String),
D3050SecondArguement(String),
D3060SqrtNegative(usize, String),
D3061PowUnrepresentable(usize, String, String),
D3070InvalidDefaultSort(usize),
D3141Assert(String),
D3137Error(String),
D3138Error(String),
D3139Error(String),
D3133PictureStringNameModifierError(String),
D3134TooManyTzDigits(String),
D3135PictureStringNoClosingBracketError(String),
T0410ArgumentNotValid(usize, usize, String),
T0412ArgumentMustBeArrayOfType(usize, usize, String, String),
T1003NonStringKey(usize, String),
T1005InvokedNonFunctionSuggest(usize, String),
T1006InvokedNonFunction(usize),
T2001LeftSideNotNumber(usize, String),
T2002RightSideNotNumber(usize, String),
T2003LeftSideNotInteger(usize),
T2004RightSideNotInteger(usize),
T2006RightSideNotFunction(usize),
T2007CompareTypeMismatch(usize, String, String),
T2008InvalidOrderBy(usize),
T2009BinaryOpMismatch(usize, String, String, String),
T2010BinaryOpTypes(usize, String),
T2011UpdateNotObject(usize, String),
T2012DeleteNotStrings(usize, String),
T2013BadClone(usize),
U1001StackOverflow,
U1001Timeout,
}
Expand description
User-facing error codes and messages. These codes are defined in the Javascript implementation here: https://github.com/jsonata-js/jsonata/blob/9e6b8e6d081e34fbd72fe24ccd703afa9248fec5/src/jsonata.js#L1941
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.
S0101UnterminatedStringLiteral(usize)
S0102LexedNumberOutOfRange(usize, String)
S0103UnsupportedEscape(usize, char)
S0104InvalidUnicodeEscape(usize)
S0105UnterminatedQuoteProp(usize)
S0106UnterminatedComment(usize)
S0201SyntaxError(usize, String)
S0202UnexpectedToken(usize, String, String)
S0204UnknownOperator(usize, String)
S0203ExpectedTokenBeforeEnd(usize, String)
S0208InvalidFunctionParam(usize, String)
S0209InvalidPredicate(usize)
S0210MultipleGroupBy(usize)
S0211InvalidUnary(usize, String)
S0212ExpectedVarLeft(usize)
S0213InvalidStep(usize, String)
S0214ExpectedVarRight(usize, String)
S0215BindingAfterPredicates(usize)
S0216BindingAfterSort(usize)
S0301EmptyRegex(usize)
S0302UnterminatedRegex(usize)
S0303InvalidRegex(usize, String)
D1001NumberOfOutRange(f64)
D1002NegatingNonNumeric(usize, String)
D1004ZeroLengthMatch(usize)
D1009MultipleKeys(usize, String)
D2014RangeOutOfBounds(usize, isize)
D3001StringNotFinite(usize)
D3010EmptyPattern(usize)
D3011NegativeLimit(usize)
D3012InvalidReplacementType(usize)
D3020NegativeLimit(usize)
D3030NonNumericCast(usize, String)
D3050SecondArguement(String)
D3060SqrtNegative(usize, String)
D3061PowUnrepresentable(usize, String, String)
D3070InvalidDefaultSort(usize)
D3141Assert(String)
D3137Error(String)
D3138Error(String)
D3139Error(String)
D3133PictureStringNameModifierError(String)
D3134TooManyTzDigits(String)
D3135PictureStringNoClosingBracketError(String)
T0410ArgumentNotValid(usize, usize, String)
T0412ArgumentMustBeArrayOfType(usize, usize, String, String)
T1003NonStringKey(usize, String)
T1005InvokedNonFunctionSuggest(usize, String)
T1006InvokedNonFunction(usize)
T2001LeftSideNotNumber(usize, String)
T2002RightSideNotNumber(usize, String)
T2003LeftSideNotInteger(usize)
T2004RightSideNotInteger(usize)
T2006RightSideNotFunction(usize)
T2007CompareTypeMismatch(usize, String, String)
T2008InvalidOrderBy(usize)
T2009BinaryOpMismatch(usize, String, String, String)
T2010BinaryOpTypes(usize, String)
T2011UpdateNotObject(usize, String)
T2012DeleteNotStrings(usize, String)
T2013BadClone(usize)
U1001StackOverflow
U1001Timeout
Implementations§
Source§impl Error
impl Error
Sourcepub fn code(&self) -> &str
pub fn code(&self) -> &str
Error codes
Sxxxx - Static errors (compile time) Txxxx - Type errors Dxxxx - Dynamic errors (evaluate time) 01xx - tokenizer 02xx - parser 03xx - regex parser 04xx - function signature parser/evaluator 10xx - evaluator 20xx - operators 3xxx - functions (blocks of 10 for each function)
Trait Implementations§
Source§impl Error for Error
impl Error for Error
1.30.0 · 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()
impl StructuralPartialEq for Error
Auto Trait Implementations§
impl Freeze for Error
impl RefUnwindSafe for Error
impl Send for Error
impl Sync for Error
impl Unpin for Error
impl UnwindSafe for Error
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