summaryrefslogtreecommitdiff
path: root/aoc22/lib/src
diff options
context:
space:
mode:
authormathiasmagnusson <mathias@magnusson.space>2022-12-11 23:04:39 +0100
committermathiasmagnusson <mathias@magnusson.space>2022-12-11 23:04:39 +0100
commitb7e2fe6160280472a625a8867ea5177b0155737c (patch)
treef8b10bd9a20adbd568b3a0d75fc0367a0523107f /aoc22/lib/src
parentac1f723d39b6d25903237af86a7319209373731b (diff)
downloadprogramming-problem-solving-b7e2fe6160280472a625a8867ea5177b0155737c.tar.gz
Aoc day 6, 7 & 8
Diffstat (limited to 'aoc22/lib/src')
-rw-r--r--aoc22/lib/src/lib.rs14
1 files changed, 12 insertions, 2 deletions
diff --git a/aoc22/lib/src/lib.rs b/aoc22/lib/src/lib.rs
index ffe4e46..1ed2b06 100644
--- a/aoc22/lib/src/lib.rs
+++ b/aoc22/lib/src/lib.rs
@@ -1,9 +1,19 @@
-use std::fs;
+use std::{fs, io::Read};
pub mod prelude {
pub use std::error::Error;
}
pub fn read_input(day: usize) -> String {
- fs::read_to_string(format!("day{}/input", day)).expect("Could not read input")
+ let mut s = String::new();
+ let path = if let Some(arg) = std::env::args().nth(1) {
+ if arg == "-" {
+ std::io::stdin().read_to_string(&mut s).unwrap();
+ return s;
+ }
+ arg
+ } else {
+ format!("day{}/input", day)
+ };
+ fs::read_to_string(path).expect("Could not read input")
}