An input queue that attempts to maximize code coverage
| 428 | |
| 429 | /// An input queue that attempts to maximize code coverage |
| 430 | pub(crate) struct CoverageQueue { |
| 431 | /// A queue of inputs that have previously increased coverage. |
| 432 | queue: VecDeque<InputId>, |
| 433 | |
| 434 | /// A queue of inputs that have yet to be fuzzed a single time. These are always processed |
| 435 | /// before existing entries in `queue`. |
| 436 | new: BinaryHeap<NewInput>, |
| 437 | |
| 438 | /// Approximate number of full iterations of the queue that have been performed. |
| 439 | pub cycles: usize, |
| 440 | |
| 441 | /// The cycle count that we last found an input at. |
| 442 | pub found_input_at_cycle: usize, |
| 443 | } |
| 444 | |
| 445 | impl CoverageQueue { |
| 446 | pub fn new() -> Self { |
nothing calls this directly
no outgoing calls
no test coverage detected