pub enum Error {
Show 41 variants
AttrValueType {
actual: AttrKind,
expected: AttrKind,
reason: String,
},
AttrValueListIndexOutOfBounds {
index: usize,
length: usize,
},
AttrValueListTooLarge {
length: usize,
},
AttrValueDictIndexOutOfBounds {
index: usize,
size: usize,
},
AttrValueDictTooLarge {
size: usize,
},
InvalidNullDataSize,
ToAttrValueConversionError {
ty: String,
},
FromAttrValueConversionError {
ty: String,
},
ToAttrValueTypeConversionError {
ty: String,
},
FromAttrValueTypeConversionError {
ty: String,
reason: String,
},
NestedToAttrValueConversionError {
ty: String,
source: Box<Error>,
},
NestedFromAttrValueConversionError {
ty: String,
source: Box<Error>,
},
NestedToAttrValueTypeConversionError {
ty: String,
source: Box<Error>,
},
NestedFromAttrValueTypeConversionError {
ty: String,
source: Box<Error>,
},
AttrValueDictMissingKey {
key: String,
},
NonHomogeneousList,
NonHomogeneousDict,
ToString,
FileLookup {
file: String,
},
CreateClass {
name: String,
message: String,
},
RegisterInterface {
name: String,
message: String,
},
ClassNotFound {
name: String,
},
ObjectNotFound {
name: String,
},
CreateObject {
message: String,
},
CurrentCheckpointDir {
message: String,
},
NoEventFound,
NoInterfaceMethod {
method: String,
},
SimicsException {
exception: SimException,
msg: String,
},
HapRegistrationType,
HapDeleteType,
ValueTooLarge {
expected: usize,
actual: usize,
},
NotADirectory {
path: PathBuf,
},
UnrecognizedLibraryTypeExtension {
library_type: String,
},
FileNotFoundInDirectory {
directory: PathBuf,
pattern: String,
},
TryFromIntError(TryFromIntError),
Utf8Error(Utf8Error),
NulError(NulError),
IoError(Error),
RegexError(Error),
Other(Error),
Infallible(Infallible),
}
Expand description
SIMICS errors, including internal and APIs used
Variants§
AttrValueType
Attribute value type mismatch
Fields
AttrValueListIndexOutOfBounds
An attribute value list was indexed out of bounds
AttrValueListTooLarge
A list was too large, this is rare as the list size limit is extremely large.
AttrValueDictIndexOutOfBounds
An attribute value dictionary was indexed out of bounds
AttrValueDictTooLarge
An attribute value dictionary was too large. This is rare as teh size limit is extremely large.
InvalidNullDataSize
Null attribute value data construction attempted without a zero size
ToAttrValueConversionError
Could not convert a type to an AttrValue
FromAttrValueConversionError
Could not convert from an attribute value to a type
Fields
ToAttrValueTypeConversionError
Could not convert to an attribute value type from a type
FromAttrValueTypeConversionError
Could not convert from an attribute value type to a type
Fields
NestedToAttrValueConversionError
Could not convert to an attribute value from a type, because of a nested error
Fields
NestedFromAttrValueConversionError
Could not convert from an attribute value to a type, because of a nested error
Fields
NestedToAttrValueTypeConversionError
Could not convert to an attribute value type from a type, because of a nested error
Fields
NestedFromAttrValueTypeConversionError
could not convert from an attribute value type to a type, because of a nested error
Fields
AttrValueDictMissingKey
A key was not found in an attribute value dictionary
NonHomogeneousList
An attribute value list was non-homogeneous during an operation that required a homogeneous list
NonHomogeneousDict
An attribute value dictionary was non-homogeneous during an operation that required a homogeneous dictionary
ToString
Error converting a value to a string
FileLookup
A file was not found
CreateClass
A class creation operation failed
RegisterInterface
Registration of an interface failed
Fields
ClassNotFound
A class could not be found
ObjectNotFound
An object could not be found
CreateObject
Object creation failed
CurrentCheckpointDir
A checkpoint directory was missing when it was required
NoEventFound
An event matching a query was not found
NoInterfaceMethod
An interface did not have a given method
SimicsException
An internal error that comes from the sys API. These exceptions are wrapped in a message and reported as Rust errors
HapRegistrationType
An error attempting to register a hap with an unsupported type
HapDeleteType
An error attempting to delete a hap with an unsupported type
ValueTooLarge
A value was too large
NotADirectory
A path that should have been a directory was not
UnrecognizedLibraryTypeExtension
An extension of a library file was not recognized
FileNotFoundInDirectory
A file could not be found matching a given pattern
Fields
TryFromIntError(TryFromIntError)
A wrapped std::num::TryFromIntError
Utf8Error(Utf8Error)
A wrapped std::str::Utf8Error
NulError(NulError)
A wrapped std::ffi::NulError
IoError(Error)
A wrapped std::io::Error
RegexError(Error)
A wrapped std::path::StripPrefixError
Other(Error)
A wrapped anyhow::Error
Infallible(Infallible)
A wrapped std::convert::Infallible