From 4c303921c859eaf2a316b1c0fe9f64b12293455f Mon Sep 17 00:00:00 2001 From: Mason Reed Date: Mon, 16 Jun 2025 14:45:30 -0400 Subject: [Rust] Add `BinaryViewExt::workflow` --- rust/src/binary_view.rs | 9 +++++++++ 1 file changed, 9 insertions(+) (limited to 'rust/src/binary_view.rs') diff --git a/rust/src/binary_view.rs b/rust/src/binary_view.rs index 417b30ef..801884ac 100644 --- a/rust/src/binary_view.rs +++ b/rust/src/binary_view.rs @@ -68,6 +68,7 @@ pub mod memory_map; pub mod reader; pub mod writer; +use crate::workflow::Workflow; pub use memory_map::MemoryMap; pub use reader::BinaryReader; pub use writer::BinaryWriter; @@ -324,6 +325,14 @@ pub trait BinaryViewExt: BinaryViewBase { unsafe { BNAbortAnalysis(self.as_ref().handle) } } + fn workflow(&self) -> Ref { + unsafe { + let raw_ptr = BNGetWorkflowForBinaryView(self.as_ref().handle); + let nonnull = NonNull::new(raw_ptr).expect("All views must have a workflow"); + Workflow::ref_from_raw(nonnull) + } + } + fn analysis_info(&self) -> Result { let info_ref = unsafe { BNGetAnalysisInfo(self.as_ref().handle) }; if info_ref.is_null() { -- cgit v1.3.1