summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/exun.rs8
-rw-r--r--src/lib.rs4
2 files changed, 10 insertions, 2 deletions
diff --git a/src/exun.rs b/src/exun.rs
index 5e9a8e0..c54f9be 100644
--- a/src/exun.rs
+++ b/src/exun.rs
@@ -5,6 +5,7 @@ use std::error::Error;
#[cfg(feature = "alloc")]
use crate::RawUnexpected;
+use crate::UnexpectedError;
pub use Exun::{Expected, Unexpected};
@@ -63,6 +64,13 @@ impl<E> From<RawUnexpected> for Exun<E, RawUnexpected> {
}
}
+#[cfg(feature = "alloc")]
+impl<E> From<RawUnexpected> for Exun<E, UnexpectedError> {
+ fn from(ue: RawUnexpected) -> Self {
+ Unexpected(ue.into())
+ }
+}
+
impl<E, U> Exun<E, U> {
/// Converts from `Expect<E, U>` to [`Option<E>`].
///
diff --git a/src/lib.rs b/src/lib.rs
index d078051..38b9067 100644
--- a/src/lib.rs
+++ b/src/lib.rs
@@ -12,10 +12,10 @@ mod result;
#[cfg(feature = "alloc")]
mod unexpected;
-pub use exun::*;
+pub use exun::{Expected, Exun, Unexpected};
#[cfg(feature = "std")]
pub use result::ResultErrorExt;
#[cfg(feature = "alloc")]
pub use result::ResultMsgExt;
#[cfg(feature = "alloc")]
-pub use unexpected::RawUnexpected;
+pub use unexpected::{RawUnexpected, UnexpectedError};