diff options
Diffstat (limited to 'rust/src/project')
| -rw-r--r-- | rust/src/project/file.rs | 9 | ||||
| -rw-r--r-- | rust/src/project/folder.rs | 12 |
2 files changed, 10 insertions, 11 deletions
diff --git a/rust/src/project/file.rs b/rust/src/project/file.rs index 4a1d6fec..3b3e48f7 100644 --- a/rust/src/project/file.rs +++ b/rust/src/project/file.rs @@ -9,6 +9,7 @@ use binaryninjacore_sys::{ BNProjectFileSetFolder, BNProjectFileSetName, }; use std::fmt::Debug; +use std::path::Path; use std::ptr::{null_mut, NonNull}; use std::time::SystemTime; @@ -56,7 +57,7 @@ impl ProjectFile { } /// Set the name of this file - pub fn set_name<S: IntoCStr>(&self, value: S) -> bool { + pub fn set_name(&self, value: &str) -> bool { let value_raw = value.to_cstr(); unsafe { BNProjectFileSetName(self.handle.as_ptr(), value_raw.as_ptr()) } } @@ -67,7 +68,7 @@ impl ProjectFile { } /// Set the description of this file - pub fn set_description<S: IntoCStr>(&self, value: S) -> bool { + pub fn set_description(&self, value: &str) -> bool { let value_raw = value.to_cstr(); unsafe { BNProjectFileSetDescription(self.handle.as_ptr(), value_raw.as_ptr()) } } @@ -92,8 +93,8 @@ impl ProjectFile { /// Export this file to disk, `true' if the export succeeded /// - /// * `dest` - Destination path for the exported contents - pub fn export<S: IntoCStr>(&self, dest: S) -> bool { + /// * `dest` - Destination file path for the exported contents, passing a directory will append the file name. + pub fn export(&self, dest: &Path) -> bool { let dest_raw = dest.to_cstr(); unsafe { BNProjectFileExport(self.handle.as_ptr(), dest_raw.as_ptr()) } } diff --git a/rust/src/project/folder.rs b/rust/src/project/folder.rs index acb663fb..d5d95e76 100644 --- a/rust/src/project/folder.rs +++ b/rust/src/project/folder.rs @@ -10,6 +10,7 @@ use binaryninjacore_sys::{ }; use std::ffi::c_void; use std::fmt::Debug; +use std::path::Path; use std::ptr::{null_mut, NonNull}; #[repr(transparent)] @@ -46,7 +47,7 @@ impl ProjectFolder { } /// Set the name of this folder - pub fn set_name<S: IntoCStr>(&self, value: S) -> bool { + pub fn set_name(&self, value: &str) -> bool { let value_raw = value.to_cstr(); unsafe { BNProjectFolderSetName(self.handle.as_ptr(), value_raw.as_ptr()) } } @@ -57,7 +58,7 @@ impl ProjectFolder { } /// Set the description of this folder - pub fn set_description<S: IntoCStr>(&self, value: S) -> bool { + pub fn set_description(&self, value: &str) -> bool { let value_raw = value.to_cstr(); unsafe { BNProjectFolderSetDescription(self.handle.as_ptr(), value_raw.as_ptr()) } } @@ -74,22 +75,19 @@ impl ProjectFolder { unsafe { BNProjectFolderSetParent(self.handle.as_ptr(), folder_handle) } } - // TODO: Take Path? /// Recursively export this folder to disk, returns `true' if the export succeeded /// /// * `dest` - Destination path for the exported contents - pub fn export<S: IntoCStr>(&self, dest: S) -> bool { + pub fn export(&self, dest: &Path) -> bool { self.export_with_progress(dest, NoProgressCallback) } - // TODO: Take Path? /// Recursively export this folder to disk, returns `true' if the export succeeded /// /// * `dest` - Destination path for the exported contents /// * `progress` - [`ProgressCallback`] that will be called as contents are exporting - pub fn export_with_progress<S, P>(&self, dest: S, mut progress: P) -> bool + pub fn export_with_progress<P>(&self, dest: &Path, mut progress: P) -> bool where - S: IntoCStr, P: ProgressCallback, { let dest_raw = dest.to_cstr(); |
