From 4d8feb4921cde4b70bb6db4ccd525a69205dee7f Mon Sep 17 00:00:00 2001 From: rbran Date: Thu, 10 Apr 2025 12:58:27 +0000 Subject: [Rust] Implement `LanguageRepresentation` and `LineFormatter` --- rust/tests/line_formatter.rs | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) create mode 100644 rust/tests/line_formatter.rs (limited to 'rust/tests/line_formatter.rs') diff --git a/rust/tests/line_formatter.rs b/rust/tests/line_formatter.rs new file mode 100644 index 00000000..72968238 --- /dev/null +++ b/rust/tests/line_formatter.rs @@ -0,0 +1,24 @@ +use binaryninja::disassembly::DisassemblyTextLine; +use binaryninja::headless::Session; +use binaryninja::line_formatter::{register_line_formatter, LineFormatter, LineFormatterSettings}; +use std::path::PathBuf; + +struct MyLineFormatter; + +impl LineFormatter for MyLineFormatter { + fn format_lines( + &self, + lines: &[DisassemblyTextLine], + _settings: &LineFormatterSettings, + ) -> Vec { + lines.to_vec() + } +} + +#[test] +fn test_custom_line_formatter() { + let _session = Session::new().expect("Failed to initialize session"); + let out_dir = env!("OUT_DIR").parse::().unwrap(); + let line_formatter = register_line_formatter("my_line_formatter", MyLineFormatter {}); + assert_eq!(line_formatter.name().as_str(), "my_line_formatter"); +} -- cgit v1.3.1