Description
The MappedCrossoverInsertMutator::mutate function performs redundant operations when accessing and mapping the corpus input:
- The testcase is borrowed twice using
get_from_all(id)?.borrow_mut().
- The input is loaded and mapped twice:
- First to compute
other_size
- Second to retrieve the mapped input for mutation
- Additional unnecessary
unwrap() checks increase branching complexity.
This results in:
- Redundant function calls
- Extra borrow operations
- Unnecessary memory allocations
- Reduced readability
Expected Behavior
The mapped input and its size should be retrieved in a single borrow scope and used directly for mutation without re-loading or re-mapping.