summaryrefslogtreecommitdiffstats
path: root/src/util.rs
diff options
context:
space:
mode:
authorJesse Luehrs <doy@tozt.net>2020-12-04 15:59:15 -0500
committerJesse Luehrs <doy@tozt.net>2020-12-04 15:59:15 -0500
commitefd70672fb0bc5cc29672b480401cc7be2466c57 (patch)
tree7ee9866bc940a5d1417b8ec351f4eefd8662ecca /src/util.rs
parent7a2dc8423a5981dfffae740dd1d1e8d55d75cccc (diff)
downloadadvent-of-code-efd70672fb0bc5cc29672b480401cc7be2466c57.tar.gz
advent-of-code-efd70672fb0bc5cc29672b480401cc7be2466c57.zip
day 4
Diffstat (limited to 'src/util.rs')
-rw-r--r--src/util.rs11
1 files changed, 10 insertions, 1 deletions
diff --git a/src/util.rs b/src/util.rs
index fdc3bed..94f9796 100644
--- a/src/util.rs
+++ b/src/util.rs
@@ -1,5 +1,5 @@
use anyhow::Context as _;
-use std::io::BufRead as _;
+use std::io::{BufRead as _, Read as _};
pub fn read_ints(filename: &str) -> anyhow::Result<Vec<i32>> {
let f = std::fs::File::open(filename)
@@ -15,3 +15,12 @@ pub fn read_ints(filename: &str) -> anyhow::Result<Vec<i32>> {
.collect();
ints
}
+
+pub fn read_file_str(filename: &str) -> anyhow::Result<String> {
+ let mut f = std::fs::File::open(filename)
+ .with_context(|| format!("couldn't find data file {}", filename))?;
+ let mut s = String::new();
+ f.read_to_string(&mut s)
+ .context("failed to read map contents")?;
+ Ok(s)
+}