pub enum EvaluationError {
EntityDoesNotExist(EntityDoesNotExistError),
EntityAttrDoesNotExist(EntityAttrDoesNotExistError),
RecordAttrDoesNotExist(RecordAttrDoesNotExistError),
FailedExtensionFunctionLookup(ExtensionFunctionLookupError),
TypeError(TypeError),
WrongNumArguments(WrongNumArgumentsError),
IntegerOverflow(IntegerOverflowError),
UnlinkedSlot(UnlinkedSlotError),
FailedExtensionFunctionExecution(ExtensionFunctionExecutionError),
NonValue(NonValueError),
RecursionLimit(RecursionLimitError),
}
Expand description
Enumeration of the possible errors that can occur during evaluation
Variants§
EntityDoesNotExist(EntityDoesNotExistError)
Tried to lookup an entity UID, but it didn’t exist in the provided entities
EntityAttrDoesNotExist(EntityAttrDoesNotExistError)
Tried to get an attribute or tag, but the specified entity didn’t have that attribute or tag
RecordAttrDoesNotExist(RecordAttrDoesNotExistError)
Tried to get an attribute of a (non-entity) record, but that record didn’t have that attribute
FailedExtensionFunctionLookup(ExtensionFunctionLookupError)
An error occurred when looking up an extension function
TypeError(TypeError)
Tried to evaluate an operation on values with incorrect types for that operation
WrongNumArguments(WrongNumArgumentsError)
Wrong number of arguments provided to an extension function
IntegerOverflow(IntegerOverflowError)
Overflow during an integer operation
UnlinkedSlot(UnlinkedSlotError)
Not all template slots were linked
FailedExtensionFunctionExecution(ExtensionFunctionExecutionError)
Evaluation error thrown by an extension function
NonValue(NonValueError)
This error is raised if an expression contains unknowns and cannot be
reduced to a Value
. In order to return partial results, use the
partial evaluation APIs instead.
RecursionLimit(RecursionLimitError)
Maximum recursion limit reached for expression evaluation
Trait Implementations§
Source§impl Clone for EvaluationError
impl Clone for EvaluationError
Source§fn clone(&self) -> EvaluationError
fn clone(&self) -> EvaluationError
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read moreSource§impl Debug for EvaluationError
impl Debug for EvaluationError
Source§impl Diagnostic for EvaluationError
impl Diagnostic for EvaluationError
Source§fn code(&self) -> Option<Box<dyn Display + '_>>
fn code(&self) -> Option<Box<dyn Display + '_>>
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 + '_>>
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>
ReportHandler
s 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> + '_>>
Diagnostic
’s Diagnostic::source_code
Source§fn source_code(&self) -> Option<&dyn SourceCode>
fn source_code(&self) -> Option<&dyn SourceCode>
Diagnostic
’s Diagnostic::labels
to.Diagnostic
s.Source§fn url(&self) -> Option<Box<dyn Display + '_>>
fn url(&self) -> Option<Box<dyn Display + '_>>
Diagnostic
.Source§fn diagnostic_source(&self) -> Option<&dyn Diagnostic>
fn diagnostic_source(&self) -> Option<&dyn Diagnostic>
Source§impl Display for EvaluationError
impl Display for EvaluationError
Source§impl Error for EvaluationError
impl Error for EvaluationError
Source§fn source(&self) -> Option<&(dyn Error + 'static)>
fn source(&self) -> Option<&(dyn Error + 'static)>
1.0.0 · Source§fn description(&self) -> &str
fn description(&self) -> &str
Source§impl From<EntityAttrDoesNotExistError> for EvaluationError
impl From<EntityAttrDoesNotExistError> for EvaluationError
Source§fn from(source: EntityAttrDoesNotExistError) -> EvaluationError
fn from(source: EntityAttrDoesNotExistError) -> EvaluationError
Source§impl From<EntityDoesNotExistError> for EvaluationError
impl From<EntityDoesNotExistError> for EvaluationError
Source§fn from(source: EntityDoesNotExistError) -> EvaluationError
fn from(source: EntityDoesNotExistError) -> EvaluationError
Source§impl From<EvaluationError> for ContextCreationError
impl From<EvaluationError> for ContextCreationError
Source§fn from(source: EvaluationError) -> Self
fn from(source: EvaluationError) -> Self
Source§fn from(source: EvaluationError) -> Self
fn from(source: EvaluationError) -> Self
Source§impl From<ExtensionFunctionExecutionError> for EvaluationError
impl From<ExtensionFunctionExecutionError> for EvaluationError
Source§fn from(source: ExtensionFunctionExecutionError) -> EvaluationError
fn from(source: ExtensionFunctionExecutionError) -> EvaluationError
Source§impl From<ExtensionFunctionLookupError> for EvaluationError
impl From<ExtensionFunctionLookupError> for EvaluationError
Source§fn from(source: ExtensionFunctionLookupError) -> EvaluationError
fn from(source: ExtensionFunctionLookupError) -> EvaluationError
Source§impl From<IntegerOverflowError> for EvaluationError
impl From<IntegerOverflowError> for EvaluationError
Source§fn from(source: IntegerOverflowError) -> EvaluationError
fn from(source: IntegerOverflowError) -> EvaluationError
Source§impl From<NonValueError> for EvaluationError
impl From<NonValueError> for EvaluationError
Source§fn from(source: NonValueError) -> EvaluationError
fn from(source: NonValueError) -> EvaluationError
Source§impl From<RecordAttrDoesNotExistError> for EvaluationError
impl From<RecordAttrDoesNotExistError> for EvaluationError
Source§fn from(source: RecordAttrDoesNotExistError) -> EvaluationError
fn from(source: RecordAttrDoesNotExistError) -> EvaluationError
Source§impl From<RecursionLimitError> for EvaluationError
impl From<RecursionLimitError> for EvaluationError
Source§fn from(source: RecursionLimitError) -> EvaluationError
fn from(source: RecursionLimitError) -> EvaluationError
Source§impl From<TypeError> for EvaluationError
impl From<TypeError> for EvaluationError
Source§fn from(source: TypeError) -> EvaluationError
fn from(source: TypeError) -> EvaluationError
Source§impl From<UnlinkedSlotError> for EvaluationError
impl From<UnlinkedSlotError> for EvaluationError
Source§fn from(source: UnlinkedSlotError) -> EvaluationError
fn from(source: UnlinkedSlotError) -> EvaluationError
Source§impl From<WrongNumArgumentsError> for EvaluationError
impl From<WrongNumArgumentsError> for EvaluationError
Source§fn from(source: WrongNumArgumentsError) -> EvaluationError
fn from(source: WrongNumArgumentsError) -> EvaluationError
Source§impl PartialEq for EvaluationError
impl PartialEq for EvaluationError
impl Eq for EvaluationError
impl StructuralPartialEq for EvaluationError
Auto Trait Implementations§
impl Freeze for EvaluationError
impl RefUnwindSafe for EvaluationError
impl Send for EvaluationError
impl Sync for EvaluationError
impl Unpin for EvaluationError
impl UnwindSafe for EvaluationError
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§unsafe fn clone_to_uninit(&self, dst: *mut T)
unsafe fn clone_to_uninit(&self, dst: *mut T)
clone_to_uninit
)Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
key
and return true
if they are equal.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>
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>
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