| 370 | } |
| 371 | |
| 372 | static df_tick_type flows_next_required_tick() { |
| 373 | if (flows == nullptr || flows->empty()) |
| 374 | return std::numeric_limits<df_tick_type>::max(); |
| 375 | |
| 376 | auto flow_indices = std::views::iota(0, (int)flows->size()); |
| 377 | auto next_flow = std::ranges::min(flow_indices, {}, flow_next_required_tick); |
| 378 | |
| 379 | return flow_next_required_tick(next_flow); |
| 380 | } |
| 381 | |
| 382 | static bool detect_caravans() |
| 383 | { |
no test coverage detected