()
| 2080 | |
| 2081 | /// Per-shard predicted full STEPS (floor + member step-cost + cross-ingress), |
| 2082 | /// indexed by shard id, from a built manifest and its block assignment. |
| 2083 | fn per_shard_steps( |
| 2084 | profile: &BlockProfile, |
| 2085 | shard_of: &[u32], |
| 2086 | manifest: &ShardManifest, |
| 2087 | ) -> Vec<u64> { |
| 2088 | let mut steps = vec![0u64; manifest.shards.len()]; |
| 2089 | for (b, &s) in shard_of.iter().enumerate() { |
| 2090 | steps[s as usize] = steps[s as usize] |
| 2091 | .saturating_add(block_step_cost(profile.block(b as u32))); |
| 2092 | } |
| 2093 | for sh in &manifest.shards { |
| 2094 | let i = sh.id as usize; |
nothing calls this directly
no test coverage detected