wikilyze/brood/src/commands/list_pages.rs
Joscha 76abf5ea6e Remove PageIdx and LinkIdx again
I don't think the type safety is worth the effort right now.
2024-08-26 01:29:28 +02:00

23 lines
657 B
Rust

use std::fs::File;
use std::io::{self, BufReader};
use std::path::Path;
use crate::data::store;
pub fn run(datafile: &Path) -> io::Result<()> {
let mut databuf = BufReader::new(File::open(datafile)?);
let data = store::read_adjacency_list(&mut databuf)?;
for (page_idx, page) in data.pages() {
if page.data.redirect {
for link_idx in data.link_range(page_idx) {
let target_page = data.page(data.link(link_idx).to);
println!("{:?} -> {:?}", page.data.title, target_page.data.title);
}
} else {
println!("{:?}", page.data.title);
}
}
Ok(())
}