MCPcopy Create free account
hub / github.com/Vector35/binaryninja-api / print_il_expr

Function print_il_expr

rust/examples/medium_level_il.rs:64–144  ·  view source on GitHub ↗
(instr: &MediumLevelILLiftedInstruction, mut indent: usize)

Source from the content-addressed store, hash-verified

62 }
63
64 pub(crate) fn print_il_expr(instr: &MediumLevelILLiftedInstruction, mut indent: usize) {
65 print_indent(indent);
66 print_operation(instr);
67
68 println!();
69
70 indent += 1;
71
72 for (_name, operand) in instr.operands() {
73 match operand {
74 Int(int) => {
75 print_indent(indent);
76 println!("int 0x{:x}", int);
77 }
78 Float(float) => {
79 print_indent(indent);
80 println!("float {:e}", float);
81 }
82 Expr(expr) => print_il_expr(&expr, indent),
83 Var(var) => {
84 print_indent(indent);
85 print!("var ");
86 print_variable(&instr.function, &var);
87 println!();
88 }
89 VarSsa(var) => {
90 print_indent(indent);
91 print!("ssa var ");
92 print_variable(&instr.function, &var.variable);
93 println!("#{}", var.version);
94 }
95 IntList(list) => {
96 print_indent(indent);
97 print!("index list ");
98 for i in list {
99 print!("{i} ");
100 }
101 println!();
102 }
103 VarList(list) => {
104 print_indent(indent);
105 print!("var list ");
106 for i in list {
107 print_variable(&instr.function, &i);
108 print!(" ");
109 }
110 println!();
111 }
112 VarSsaList(list) => {
113 print_indent(indent);
114 print!("ssa var list ");
115 for i in list {
116 print_variable(&instr.function, &i.variable);
117 print!("#{} ", i.version);
118 }
119 println!();
120 }
121 ExprList(list) => {

Callers 1

mainFunction · 0.70

Calls 4

print_indentFunction · 0.70
print_operationFunction · 0.70
print_variableFunction · 0.70
operandsMethod · 0.45

Tested by

no test coverage detected