use encoding::repr::*;
use num_derive::FromPrimitive;
#[repr(u64)]
#[derive(PartialEq, Eq, Debug, Clone, Copy, FromPrimitive, Serialize_repr, Deserialize_repr)]
pub enum ExitCode {
Ok = 0,
SysErrSenderInvalid = 1,
SysErrSenderStateInvalid = 2,
SysErrInvalidMethod = 3,
SysErrActorPanic = 4,
SysErrInvalidReceiver = 5,
SysErrInsufficientFunds = 6,
SysErrOutOfGas = 7,
SysErrForbidden = 8,
SysErrIllegalActor = 9,
SysErrIllegalArgument = 10,
SysErrReserved2 = 11,
SysErrReserved3 = 12,
SysErrReserved4 = 13,
SysErrReserved5 = 14,
SysErrReserved6 = 15,
ErrIllegalArgument = 16,
ErrNotFound = 17,
ErrForbidden = 18,
ErrInsufficientFunds = 19,
ErrIllegalState = 20,
ErrSerialization = 21,
ErrTooManyProveCommits = 32,
ErrPlaceholder = 1000,
}
impl ExitCode {
pub fn is_success(self) -> bool {
matches!(self, ExitCode::Ok)
}
}