aboutsummaryrefslogtreecommitdiff
path: root/src/app/freq.rs
diff options
context:
space:
mode:
authorTill Höppner2016-02-03 04:09:24 +0100
committerTill Höppner2016-02-03 04:09:24 +0100
commit89eaef2ae296744b511ede852cb497af0abcc7b7 (patch)
treeffb67c416d00d66d30996eb3b514090166b223ab /src/app/freq.rs
parent8c1430424468e799435f5e1c877f72d0565ff38c (diff)
downloadilc-89eaef2ae296744b511ede852cb497af0abcc7b7.tar.gz
ilc-89eaef2ae296744b511ede852cb497af0abcc7b7.tar.xz
ilc-89eaef2ae296744b511ede852cb497af0abcc7b7.zip
Add count argument to freq
Diffstat (limited to 'src/app/freq.rs')
-rw-r--r--src/app/freq.rs7
1 files changed, 4 insertions, 3 deletions
diff --git a/src/app/freq.rs b/src/app/freq.rs
index 9446b50..6d80f2e 100644
--- a/src/app/freq.rs
+++ b/src/app/freq.rs
@@ -69,9 +69,10 @@ pub fn freq(args: &ArgMatches) {
let mut stats: Vec<(String, Person)> = stats.into_iter().collect();
stats.sort_by(|&(_, ref a), &(_, ref b)| b.words.cmp(&a.words));
- for &(ref name, ref stat) in stats.iter() {
+ let count = value_t!(args, "count", usize).unwrap_or(stats.len());
+ for &(ref name, ref stat) in stats.iter().take(count) {
let _ = write!(&mut output,
- "{}:\n\tTotal lines: {}\n\tLines without alphabetic characters: {}\n\tTotal words: {}\n\tWords per line: {}\n",
- name, stat.lines, stat.lines - stat.alpha_lines, stat.words, stat.words as f32 / stat.lines as f32);
+ "{}:\n\tTotal lines: {}\n\tLines without alphabetic characters: {}\n\tTotal words: {}\n\tWords per line: {}\n",
+ name, stat.lines, stat.lines - stat.alpha_lines, stat.words, stat.words as f32 / stat.lines as f32);
}
}