diff options
| author | Mason Reed <mason@vector35.com> | 2025-12-17 21:23:46 -0500 |
|---|---|---|
| committer | Mason Reed <35282038+emesare@users.noreply.github.com> | 2026-01-11 10:36:01 -0800 |
| commit | 168a3fd34824adc9c6a606cd144219701f15cccf (patch) | |
| tree | 9bbac31ece5ea6ab6627998d995a77f7f7e2f8e6 /rust/src/file_metadata.rs | |
| parent | ca91bc1933976c62d24248f0f7c35af38451ff11 (diff) | |
[Rust] Replace `log` with `tracing`
- Added more documentation
- Replaced global named logger for plugins, fixing the issue when the CU has multiple (e.g. statically linked demo)
- Simplified some misc code
This is a breaking change, but I believe there is no better time to make it, we cannot continue to use the `log` crate, it is too limited for our needs.
Diffstat (limited to 'rust/src/file_metadata.rs')
| -rw-r--r-- | rust/src/file_metadata.rs | 17 |
1 files changed, 6 insertions, 11 deletions
diff --git a/rust/src/file_metadata.rs b/rust/src/file_metadata.rs index 20f0aff5..27ceb4af 100644 --- a/rust/src/file_metadata.rs +++ b/rust/src/file_metadata.rs @@ -16,15 +16,7 @@ use crate::binary_view::BinaryView; use crate::database::Database; use crate::rc::*; use crate::string::*; -use binaryninjacore_sys::{ - BNBeginUndoActions, BNCloseFile, BNCommitUndoActions, BNCreateDatabase, BNCreateFileMetadata, - BNFileMetadata, BNFileMetadataGetSessionId, BNForgetUndoActions, BNFreeFileMetadata, - BNGetCurrentOffset, BNGetCurrentView, BNGetExistingViews, BNGetFileMetadataDatabase, - BNGetFileViewOfType, BNGetFilename, BNGetProjectFile, BNIsAnalysisChanged, - BNIsBackedByDatabase, BNIsFileModified, BNMarkFileModified, BNMarkFileSaved, BNNavigate, - BNNewFileReference, BNOpenDatabaseForConfiguration, BNOpenExistingDatabase, BNRedo, - BNRevertUndoActions, BNSaveAutoSnapshot, BNSetFilename, BNUndo, -}; +use binaryninjacore_sys::*; use binaryninjacore_sys::{BNCreateDatabaseWithProgress, BNOpenExistingDatabaseWithProgress}; use std::ffi::c_void; use std::fmt::{Debug, Display, Formatter}; @@ -34,6 +26,8 @@ use crate::progress::ProgressCallback; use crate::project::file::ProjectFile; use std::ptr::{self, NonNull}; +new_id_type!(SessionId, usize); + #[derive(PartialEq, Eq, Hash)] pub struct FileMetadata { pub(crate) handle: *mut BNFileMetadata, @@ -64,8 +58,9 @@ impl FileMetadata { } } - pub fn session_id(&self) -> usize { - unsafe { BNFileMetadataGetSessionId(self.handle) } + pub fn session_id(&self) -> SessionId { + let raw = unsafe { BNFileMetadataGetSessionId(self.handle) }; + SessionId(raw) } pub fn filename(&self) -> String { |
