diff options
Diffstat (limited to 'rust/src/project/file.rs')
| -rw-r--r-- | rust/src/project/file.rs | 11 |
1 files changed, 9 insertions, 2 deletions
diff --git a/rust/src/project/file.rs b/rust/src/project/file.rs index 2d75cb24..ae23365a 100644 --- a/rust/src/project/file.rs +++ b/rust/src/project/file.rs @@ -5,8 +5,8 @@ use binaryninjacore_sys::{ BNFreeProjectFile, BNFreeProjectFileList, BNNewProjectFileReference, BNProjectFile, BNProjectFileExistsOnDisk, BNProjectFileExport, BNProjectFileGetCreationTimestamp, BNProjectFileGetDescription, BNProjectFileGetFolder, BNProjectFileGetId, BNProjectFileGetName, - BNProjectFileGetPathOnDisk, BNProjectFileGetProject, BNProjectFileSetDescription, - BNProjectFileSetFolder, BNProjectFileSetName, + BNProjectFileGetPathInProject, BNProjectFileGetPathOnDisk, BNProjectFileGetProject, + BNProjectFileSetDescription, BNProjectFileSetFolder, BNProjectFileSetName, }; use std::fmt::Debug; use std::path::{Path, PathBuf}; @@ -46,6 +46,13 @@ impl ProjectFile { Some(PathBuf::from(path_str)) } + /// Get the path in the project to this file's contents + pub fn path_in_project(&self) -> Option<PathBuf> { + let path_str = + unsafe { BnString::into_string(BNProjectFileGetPathInProject(self.handle.as_ptr())) }; + Some(PathBuf::from(path_str)) + } + /// Check if this file's contents exist on disk pub fn exists_on_disk(&self) -> bool { unsafe { BNProjectFileExistsOnDisk(self.handle.as_ptr()) } |
