Serialize/deserialize exception codes.

This commit is contained in:
losfair
2020-01-10 02:53:08 +08:00
parent f44517b9fb
commit 4b5b8976e9
2 changed files with 11 additions and 2 deletions

View File

@ -1,6 +1,7 @@
//! The error module contains the data structures and helper functions used to implement errors that
//! are produced and returned from the wasmer runtime core.
use crate::types::{FuncSig, GlobalDescriptor, MemoryDescriptor, TableDescriptor, Type};
use crate::backend::ExceptionCode;
use core::borrow::Borrow;
use std::any::Any;
@ -208,6 +209,8 @@ impl std::fmt::Display for RuntimeError {
write!(f, "\"{}\"", s)
} else if let Some(s) = data.downcast_ref::<&str>() {
write!(f, "\"{}\"", s)
} else if let Some(exc_code) = data.downcast_ref::<ExceptionCode>() {
write!(f, "\"{:?}\"", exc_code)
} else {
write!(f, "unknown error")
}