diff --git a/crates/ruma-identifiers/src/macros.rs b/crates/ruma-identifiers/src/macros.rs index 7396312c..8dda2e1a 100644 --- a/crates/ruma-identifiers/src/macros.rs +++ b/crates/ruma-identifiers/src/macros.rs @@ -175,12 +175,24 @@ macro_rules! opaque_identifier { } } + impl From> for Box<$id> { + fn from(s: Box) -> Self { + $id::from_owned(s) + } + } + impl From for Box<$id> { fn from(s: String) -> Self { $id::from_owned(s.into()) } } + impl From> for Box { + fn from(id: Box<$id>) -> Self { + id.into_owned() + } + } + impl From> for String { fn from(id: Box<$id>) -> Self { id.into_owned().into()