summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLars Wirzenius <liw@liw.fi>2023-01-07 10:24:51 +0200
committerLars Wirzenius <liw@liw.fi>2023-01-07 10:24:51 +0200
commitd48c4f0c71b9fdd8aa28367be11d56cfa63b6afc (patch)
tree25ae69fe988441bdcf3b0d51a42c0e7deb826a27
parenta5f969621c3534cbcd3f7b547319b0539b338d0d (diff)
downloadriki-d48c4f0c71b9fdd8aa28367be11d56cfa63b6afc.tar.gz
refactor: move SiteError::FileRead into src/page.rs
Sponsored-by: author
-rw-r--r--src/error.rs4
-rw-r--r--src/page.rs8
2 files changed, 9 insertions, 3 deletions
diff --git a/src/error.rs b/src/error.rs
index 6593305..3053ca8 100644
--- a/src/error.rs
+++ b/src/error.rs
@@ -12,8 +12,8 @@ pub enum SiteError {
#[error(transparent)]
Git(#[from] crate::git::GitError),
- #[error("could not read file: {0}")]
- FileRead(PathBuf, #[source] std::io::Error),
+ #[error(transparent)]
+ Page(#[from] crate::page::PageError),
#[error("string formatting error: {0}")]
Format(#[source] std::fmt::Error),
diff --git a/src/page.rs b/src/page.rs
index a8d60a5..4a9930c 100644
--- a/src/page.rs
+++ b/src/page.rs
@@ -10,6 +10,12 @@ use log::{info, trace};
use std::path::{Path, PathBuf};
use std::time::SystemTime;
+#[derive(Debug, thiserror::Error)]
+pub enum PageError {
+ #[error("could not read file: {0}")]
+ FileRead(PathBuf, #[source] std::io::Error),
+}
+
pub struct Page {
meta: PageMeta,
unprocessed: UnprocessedPage,
@@ -44,7 +50,7 @@ impl WikitextPage {
info!("input file: {}", name);
let src = name.source_path();
- let data = std::fs::read(src).map_err(|e| SiteError::FileRead(src.into(), e))?;
+ let data = std::fs::read(src).map_err(|e| PageError::FileRead(src.into(), e))?;
let wikitext = String::from_utf8(data).map_err(|e| SiteError::Utf8(src.into(), e))?;
let mtime = get_mtime(src)?;