Skip to main content

parse_disassemble_args

Function parse_disassemble_args 

Source
pub fn parse_disassemble_args(args: &[String]) -> DisassembleOpts<'_>
Expand description

Parse disassemble args: <path> [options].

Iteration is driven by args.iter() rather than a manual let mut i = 0; while i < args.len() cursor so that every option handler advances the cursor by consuming the iterator. The previous index-based loop scattered ~22 i += 1 expressions across the body; every += -> -= or += -> *= mutation on those lines produces an infinite loop (the outer while never terminates because i either wraps around on usize underflow or stays put), which cargo-mutants can only classify as timeout. That added ~36 timeouts and ~36 minutes of wall-clock to every full sweep with no actual signal. The iterator form removes those mutation sites entirely; behavior is unchanged and covered by the existing parse_disassemble_args_* tests.