From d8e3001e535fad178c621ff07418f81f25123dc4 Mon Sep 17 00:00:00 2001 From: Rusty Wagner Date: Thu, 22 Aug 2024 12:55:49 -0600 Subject: Allow multiple high level representations for display, add Pseudo Rust and a Pseudo Python example plugin --- rust/src/linearview.rs | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) (limited to 'rust/src/linearview.rs') diff --git a/rust/src/linearview.rs b/rust/src/linearview.rs index 84b4323e..b90d2784 100644 --- a/rust/src/linearview.rs +++ b/rust/src/linearview.rs @@ -103,11 +103,17 @@ impl LinearViewObject { } } - pub fn language_representation(view: &BinaryView, settings: &DisassemblySettings) -> Ref { + pub fn language_representation( + view: &BinaryView, + settings: &DisassemblySettings, + language: &str, + ) -> Ref { unsafe { + let language = std::ffi::CString::new(language).unwrap(); let handle = binaryninjacore_sys::BNCreateLinearViewLanguageRepresentation( view.handle, settings.handle, + language.as_ptr(), ); Self::from_raw(handle) @@ -195,12 +201,15 @@ impl LinearViewObject { pub fn single_function_language_representation( function: &Function, settings: &DisassemblySettings, + language: &str, ) -> Ref { unsafe { + let language = std::ffi::CString::new(language).unwrap(); let handle = binaryninjacore_sys::BNCreateLinearViewSingleFunctionLanguageRepresentation( function.handle, settings.handle, + language.as_ptr(), ); Self::from_raw(handle) -- cgit v1.3.1