summaryrefslogtreecommitdiff
path: root/rust/src/string.rs
diff options
context:
space:
mode:
Diffstat (limited to 'rust/src/string.rs')
-rw-r--r--rust/src/string.rs9
1 files changed, 9 insertions, 0 deletions
diff --git a/rust/src/string.rs b/rust/src/string.rs
index 17fcf911..640731ff 100644
--- a/rust/src/string.rs
+++ b/rust/src/string.rs
@@ -23,6 +23,7 @@ use std::hash::{Hash, Hasher};
use std::mem;
use std::ops::Deref;
use std::path::{Path, PathBuf};
+use crate::type_archive::TypeArchiveSnapshotId;
// TODO: Remove or refactor this.
pub(crate) fn raw_to_string(ptr: *const c_char) -> Option<String> {
@@ -291,6 +292,14 @@ unsafe impl AsCStr for &Path {
}
}
+unsafe impl AsCStr for TypeArchiveSnapshotId {
+ type Result = CString;
+
+ fn to_cstr(self) -> Self::Result {
+ self.to_string().to_cstr()
+ }
+}
+
pub trait IntoJson {
type Output: AsCStr;