(dir: &Path)
| 228 | } |
| 229 | |
| 230 | fn dir_size(dir: &Path) -> Result<u64> { |
| 231 | let mut total = 0u64; |
| 232 | let entries = fs::read_dir(dir).with_context(|| format!("reading {}", dir.display()))?; |
| 233 | for entry in entries.flatten() { |
| 234 | let m = entry.metadata()?; |
| 235 | if m.is_dir() { |
| 236 | total = total.saturating_add(dir_size(&entry.path())?); |
| 237 | } else { |
| 238 | total = total.saturating_add(m.len()); |
| 239 | } |
| 240 | } |
| 241 | Ok(total) |
| 242 | } |
| 243 | |
| 244 | fn index_html(entry: &str) -> String { |
| 245 | INDEX_HTML.replace("__EDGE_ENTRY__", entry) |