Skip to content

Commit 3af0bca

Browse files
Fix clippy unnecessary_unwrap warnings in bytecode.rs (#95)
Refactor the line number handling to use 'if let Some(number) = line.number' pattern instead of checking 'is_none()' and then calling 'unwrap()'. This is more idiomatic Rust and eliminates the clippy::unnecessary_unwrap warnings. Co-authored-by: openhands <openhands@all-hands.dev>
1 parent 633fd44 commit 3af0bca

2 files changed

Lines changed: 128 additions & 27 deletions

File tree

mise.lock

Lines changed: 119 additions & 18 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

src_rust/bytecode.rs

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -597,13 +597,7 @@ impl LineEntry {
597597
for line_py in lines {
598598
let line = line_py.borrow(py);
599599

600-
if line.number.is_none() {
601-
let mut bytecodes = (line.end - prev_end) / 2;
602-
while bytecodes > 0 {
603-
linetable.push(0x80 | (15 << 3) | (std::cmp::min(bytecodes, 8) - 1) as u8);
604-
bytecodes -= 8;
605-
}
606-
} else {
600+
if let Some(number) = line.number {
607601
if prev_end < line.start {
608602
let mut bytecodes = (line.start - prev_end) / 2;
609603
while bytecodes > 0 {
@@ -612,7 +606,7 @@ impl LineEntry {
612606
}
613607
}
614608

615-
let mut line_delta = line.number.unwrap() - prev_number;
609+
let mut line_delta = number - prev_number;
616610
let mut bytecodes = (line.end - line.start) / 2;
617611
while bytecodes > 0 {
618612
linetable.push(0x80 | (13 << 3) | (std::cmp::min(bytecodes, 8) - 1) as u8);
@@ -621,7 +615,13 @@ impl LineEntry {
621615
bytecodes -= 8;
622616
}
623617

624-
prev_number = line.number.unwrap();
618+
prev_number = number;
619+
} else {
620+
let mut bytecodes = (line.end - prev_end) / 2;
621+
while bytecodes > 0 {
622+
linetable.push(0x80 | (15 << 3) | (std::cmp::min(bytecodes, 8) - 1) as u8);
623+
bytecodes -= 8;
624+
}
625625
}
626626

627627
prev_end = line.end;

0 commit comments

Comments
 (0)