summaryrefslogtreecommitdiff
path: root/rust/src/references.rs
diff options
context:
space:
mode:
Diffstat (limited to 'rust/src/references.rs')
-rw-r--r--rust/src/references.rs16
1 files changed, 8 insertions, 8 deletions
diff --git a/rust/src/references.rs b/rust/src/references.rs
index 76ac4493..8b4ebb87 100644
--- a/rust/src/references.rs
+++ b/rust/src/references.rs
@@ -1,6 +1,6 @@
use crate::architecture::CoreArchitecture;
use crate::function::Function;
-use crate::rc::{CoreArrayProvider, CoreArrayWrapper, CoreOwnedArrayProvider, Ref};
+use crate::rc::{CoreArrayProvider, CoreArrayWrapper, CoreOwnedArrayProvider, Guard, Ref};
use binaryninjacore_sys::{BNFreeCodeReferences, BNFreeDataReferences, BNReferenceSource};
use std::mem::ManuallyDrop;
@@ -64,11 +64,11 @@ unsafe impl CoreOwnedArrayProvider for CodeReference {
}
}
-unsafe impl<'a> CoreArrayWrapper<'a> for CodeReference {
- type Wrapped = CodeReference;
+unsafe impl CoreArrayWrapper for CodeReference {
+ type Wrapped<'a> = Guard<'a, CodeReference>;
- unsafe fn wrap_raw(raw: &'a Self::Raw, _context: &'a Self::Context) -> Self::Wrapped {
- CodeReference::new(raw)
+ unsafe fn wrap_raw<'a>(raw: &'a Self::Raw, _context: &'a Self::Context) -> Self::Wrapped<'a> {
+ Guard::new(CodeReference::new(raw), &())
}
}
@@ -85,10 +85,10 @@ unsafe impl CoreOwnedArrayProvider for DataReference {
}
}
-unsafe impl<'a> CoreArrayWrapper<'a> for DataReference {
- type Wrapped = DataReference;
+unsafe impl CoreArrayWrapper for DataReference {
+ type Wrapped<'a> = DataReference;
- unsafe fn wrap_raw(raw: &'a Self::Raw, _context: &'a Self::Context) -> Self::Wrapped {
+ unsafe fn wrap_raw<'a>(raw: &'a Self::Raw, _context: &'a Self::Context) -> Self::Wrapped<'a> {
DataReference { address: *raw }
}
}