Is an island needed within the next N bytes?
(&self, distance: CodeOffset)
| 1309 | |
| 1310 | /// Is an island needed within the next N bytes? |
| 1311 | pub fn island_needed(&self, distance: CodeOffset) -> bool { |
| 1312 | let deadline = match self.fixup_records.peek() { |
| 1313 | Some(fixup) => fixup.deadline().min(self.pending_fixup_deadline), |
| 1314 | None => self.pending_fixup_deadline, |
| 1315 | }; |
| 1316 | trace!( |
| 1317 | "checking island_needed: cur_offset = {} deadline = {} worst_case_end_of_island = {}", |
| 1318 | self.cur_offset(), |
| 1319 | deadline, |
| 1320 | self.worst_case_end_of_island(distance) |
| 1321 | ); |
| 1322 | let needed = deadline < u32::MAX && self.worst_case_end_of_island(distance) > deadline; |
| 1323 | trace!(" -> needed = {needed}"); |
| 1324 | needed |
| 1325 | } |
| 1326 | |
| 1327 | /// Returns the maximal offset that islands can reach if `distance` more |
| 1328 | /// bytes are appended. |