pub enum IrError {
Show 59 variants
FunctionLocalClobbered(String, String),
InvalidMetadatum(String),
InvalidPhi,
MisplacedTerminator(String),
MissingBlock(String),
MissingTerminator(String),
ParseFailure(String, String),
RemoveMissingBlock(String),
ValueNotFound(String),
VerifyArgumentValueIsNotArgument(String),
VerifyUnaryOpIncorrectArgType,
VerifyBinaryOpIncorrectArgType,
VerifyBitcastBetweenInvalidTypes(String, String),
VerifyBitcastUnknownSourceType,
VerifyBlockArgMalformed,
VerifyBranchParamsMismatch,
VerifyBranchToMissingBlock(String),
VerifyCallArgTypeMismatch(String, String, String),
VerifyCallToMissingFunction(String),
VerifyCmpBadTypes(String, String),
VerifyCmpTypeMismatch(String, String),
VerifyCmpUnknownTypes,
VerifyConditionExprNotABool,
VerifyContractCallBadTypes(String),
VerifyGepElementTypeNonPointer,
VerifyGepFromNonPointer(String),
VerifyGepInconsistentTypes,
VerifyGepOnNonAggregate,
VerifyGetNonExistentPointer,
VerifyInsertElementOfIncorrectType,
VerifyInsertValueOfIncorrectType,
VerifyIntToPtrFromNonIntegerType(String),
VerifyIntToPtrToNonPointer(String),
VerifyIntToPtrUnknownSourceType,
VerifyInvalidGtfIndexType,
VerifyLoadFromNonPointer(String),
VerifyLogId,
VerifyLogMismatchedTypes,
VerifyMemcopyNonPointer(String),
VerifyMemcopyMismatchedTypes(String, String),
VerifyPtrCastFromNonPointer(String),
VerifyPtrCastToNonPointer(String),
VerifyPtrToIntToNonInteger(String),
VerifyReturnMismatchedTypes(String),
VerifyRevertCodeBadType,
VerifySmoBadMessageType,
VerifySmoCoins,
VerifySmoMessageSize,
VerifySmoRecipientNonPointer(String),
VerifySmoMessageNonPointer(String),
VerifySmoRecipientBadType,
VerifyStateAccessNumOfSlots,
VerifyStateAccessQuadNonPointer(String),
VerifyStateDestBadType(String),
VerifyStateKeyBadType,
VerifyStateKeyNonPointer(String),
VerifyStoreMismatchedTypes,
VerifyStoreToNonPointer(String),
VerifyUntypedValuePassedToFunction,
}
Expand description
These errors are for internal IR failures, not designed to be useful to a Sway developer, but
more for users of the sway-ir
crate, i.e., compiler developers.
XXX They’re not very rich and could do with a little more verbosity.
Variants§
FunctionLocalClobbered(String, String)
InvalidMetadatum(String)
InvalidPhi
MisplacedTerminator(String)
MissingBlock(String)
MissingTerminator(String)
ParseFailure(String, String)
RemoveMissingBlock(String)
ValueNotFound(String)
VerifyArgumentValueIsNotArgument(String)
VerifyUnaryOpIncorrectArgType
VerifyBinaryOpIncorrectArgType
VerifyBitcastBetweenInvalidTypes(String, String)
VerifyBitcastUnknownSourceType
VerifyBlockArgMalformed
VerifyBranchParamsMismatch
VerifyBranchToMissingBlock(String)
VerifyCallArgTypeMismatch(String, String, String)
VerifyCallToMissingFunction(String)
VerifyCmpBadTypes(String, String)
VerifyCmpTypeMismatch(String, String)
VerifyCmpUnknownTypes
VerifyConditionExprNotABool
VerifyContractCallBadTypes(String)
VerifyGepElementTypeNonPointer
VerifyGepFromNonPointer(String)
VerifyGepInconsistentTypes
VerifyGepOnNonAggregate
VerifyGetNonExistentPointer
VerifyInsertElementOfIncorrectType
VerifyInsertValueOfIncorrectType
VerifyIntToPtrFromNonIntegerType(String)
VerifyIntToPtrToNonPointer(String)
VerifyIntToPtrUnknownSourceType
VerifyInvalidGtfIndexType
VerifyLoadFromNonPointer(String)
VerifyLogId
VerifyLogMismatchedTypes
VerifyMemcopyNonPointer(String)
VerifyMemcopyMismatchedTypes(String, String)
VerifyPtrCastFromNonPointer(String)
VerifyPtrCastToNonPointer(String)
VerifyPtrToIntToNonInteger(String)
VerifyReturnMismatchedTypes(String)
VerifyRevertCodeBadType
VerifySmoBadMessageType
VerifySmoCoins
VerifySmoMessageSize
VerifySmoRecipientNonPointer(String)
VerifySmoMessageNonPointer(String)
VerifySmoRecipientBadType
VerifyStateAccessNumOfSlots
VerifyStateAccessQuadNonPointer(String)
VerifyStateDestBadType(String)
VerifyStateKeyBadType
VerifyStateKeyNonPointer(String)
VerifyStoreMismatchedTypes
VerifyStoreToNonPointer(String)
VerifyUntypedValuePassedToFunction
Trait Implementations§
source§impl Error for IrError
impl Error for IrError
1.30.0 · source§fn source(&self) -> Option<&(dyn Error + 'static)>
fn source(&self) -> Option<&(dyn Error + 'static)>
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()
Auto Trait Implementations§
impl RefUnwindSafe for IrError
impl Send for IrError
impl Sync for IrError
impl Unpin for IrError
impl UnwindSafe for IrError
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> Downcast for Twhere
T: Any,
impl<T> Downcast for Twhere T: Any,
source§fn into_any(self: Box<T, Global>) -> Box<dyn Any, Global>
fn into_any(self: Box<T, Global>) -> Box<dyn Any, Global>
Convert
Box<dyn Trait>
(where Trait: Downcast
) to Box<dyn Any>
. Box<dyn Any>
can
then be further downcast
into Box<ConcreteType>
where ConcreteType
implements Trait
.source§fn into_any_rc(self: Rc<T, Global>) -> Rc<dyn Any, Global>
fn into_any_rc(self: Rc<T, Global>) -> Rc<dyn Any, Global>
Convert
Rc<Trait>
(where Trait: Downcast
) to Rc<Any>
. Rc<Any>
can then be
further downcast
into Rc<ConcreteType>
where ConcreteType
implements Trait
.source§fn as_any(&self) -> &(dyn Any + 'static)
fn as_any(&self) -> &(dyn Any + 'static)
Convert
&Trait
(where Trait: Downcast
) to &Any
. This is needed since Rust cannot
generate &Any
’s vtable from &Trait
’s.source§fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
Convert
&mut Trait
(where Trait: Downcast
) to &Any
. This is needed since Rust cannot
generate &mut Any
’s vtable from &mut Trait
’s.