Skip to content

Commit

Permalink
wip: minor improvements
Browse files Browse the repository at this point in the history
  • Loading branch information
markxoe committed Jun 3, 2024
1 parent 1da1e3a commit 0244a1a
Show file tree
Hide file tree
Showing 5 changed files with 16 additions and 24 deletions.
4 changes: 2 additions & 2 deletions src/commands/interactive.rs
Original file line number Diff line number Diff line change
Expand Up @@ -42,14 +42,14 @@ If you want to exit press ctrl+d or ctrl+c\n"
let links = data.links;
let lookup = data.pages;

fn page_input_loop<'a>(prompt: &str, pages: &'a PageMap) -> Option<PageMapResult> {
fn page_input_loop(prompt: &str, pages: &PageMap) -> Option<PageMapResult> {
loop {
let input = inquire::Text::new(prompt).prompt();
if input.is_err() {
return None;
}

let input = input.unwrap().replace(" ", "_");
let input = input.unwrap().replace(' ', "_");
let page = pages.resolve_by_title(&input);
if page.is_none() {
println!("Page not found");
Expand Down
11 changes: 7 additions & 4 deletions src/data/maps/link_map.rs
Original file line number Diff line number Diff line change
Expand Up @@ -29,10 +29,13 @@ impl LinkMap {
};

while let Some((from, to)) = links.pop_front() {
if map.contains_key(&from) {
map.get_mut(&from).unwrap().push(to);
} else {
map.insert(from, vec![to]);
match map.entry(from) {
std::collections::hash_map::Entry::Vacant(e) => {
e.insert(vec![to]);
}
std::collections::hash_map::Entry::Occupied(mut e) => {
e.get_mut().push(to);
}
}

links_counter += 1;
Expand Down
5 changes: 1 addition & 4 deletions src/data/parsers/common.rs
Original file line number Diff line number Diff line change
Expand Up @@ -42,16 +42,13 @@ where
let file_ptr = File::open(file).expect("Unable to open file");
let reader = BufReader::new(file_ptr);

let mut i = 0;

for line in reader.lines().into_iter() {
for (i, line) in reader.lines().enumerate() {
let line = line.unwrap();
tx.send(line).expect("Error sending line");

if i % 100 == 0 {
debug!("Read {} lines", i);
}
i += 1;
}
});

Expand Down
4 changes: 1 addition & 3 deletions src/data/parsers/links.rs
Original file line number Diff line number Diff line change
Expand Up @@ -40,9 +40,7 @@ pub fn read_and_parse_links2(
// note: namespace is fixed in regex to 0 (main namespace)
let re = Regex::new(r"\(([0-9]+),0,'([^']+)',0,[0-9]*\)").expect("Invalid regex");

let progress = progress
.with_len(common::get_file_line_count(&file))
.build();
let progress = progress.with_len(common::get_file_line_count(file)).build();

let out = common::parse_file_async(
file.to_string(),
Expand Down
16 changes: 5 additions & 11 deletions src/indication.rs
Original file line number Diff line number Diff line change
Expand Up @@ -60,7 +60,7 @@ impl ProgressReporter {
finish_message: Option<&'static str>,
steps: Option<(u8, u8)>,
) -> Self {
let progress = spinner(if let Some(_) = steps { true } else { false });
let progress = spinner(steps.is_some());
progress.set_message(message.clone());

if let Some((step, steps)) = steps {
Expand Down Expand Up @@ -177,7 +177,7 @@ impl ProgressBuilder {
}

fn build_progress(self) -> ProgressReporter {
let len = self.len.unwrap() as u64;
let len = self.len.unwrap();
let message = self.message.unwrap();
let steps = self.steps.unwrap();
let step = self.step.unwrap();
Expand All @@ -191,15 +191,9 @@ impl ProgressBuilder {
let message = self.message.unwrap();
let finish_message = self.finish_message;

let steps = if let Some(steps) = self.steps {
if let Some(step) = self.step {
Some((step, steps))
} else {
None
}
} else {
None
};
let steps = self
.steps
.map(|steps| (steps, self.step.expect("only steps given, no step")));

ProgressReporter::new_spinner(message, finish_message, steps)
}
Expand Down

0 comments on commit 0244a1a

Please sign in to comment.