From f92911b8aadf09b33190840c377f50f6e3bd6631 Mon Sep 17 00:00:00 2001 From: Joseph Priou Date: Sat, 9 Jul 2022 17:43:17 +0200 Subject: [PATCH] Revert "remove __non_exhaustive members, add non_exhaustive attribute instead" --- src/book/book.rs | 7 +++++-- src/preprocess/mod.rs | 4 +++- src/renderer/mod.rs | 4 +++- 3 files changed, 11 insertions(+), 4 deletions(-) diff --git a/src/book/book.rs b/src/book/book.rs index 34c42fa5..d28c22da 100644 --- a/src/book/book.rs +++ b/src/book/book.rs @@ -77,10 +77,10 @@ fn create_missing(src_dir: &Path, summary: &Summary) -> Result<()> { /// [`iter()`]: #method.iter /// [`for_each_mut()`]: #method.for_each_mut #[derive(Debug, Clone, Default, PartialEq, Serialize, Deserialize)] -#[non_exhaustive] pub struct Book { /// The sections in this book. pub sections: Vec, + __non_exhaustive: (), } impl Book { @@ -228,7 +228,10 @@ pub(crate) fn load_book_from_disk>(summary: &Summary, src_dir: P) chapters.push(chapter); } - Ok(Book { sections: chapters }) + Ok(Book { + sections: chapters, + __non_exhaustive: (), + }) } fn load_summary_item + Clone>( diff --git a/src/preprocess/mod.rs b/src/preprocess/mod.rs index 60100cac..894e2003 100644 --- a/src/preprocess/mod.rs +++ b/src/preprocess/mod.rs @@ -21,7 +21,6 @@ use serde::{Deserialize, Serialize}; /// Extra information for a `Preprocessor` to give them more context when /// processing a book. #[derive(Debug, Clone, PartialEq, Serialize, Deserialize)] -#[non_exhaustive] pub struct PreprocessorContext { /// The location of the book directory on disk. pub root: PathBuf, @@ -33,6 +32,8 @@ pub struct PreprocessorContext { pub mdbook_version: String, #[serde(skip)] pub(crate) chapter_titles: RefCell>, + #[serde(skip)] + __non_exhaustive: (), } impl PreprocessorContext { @@ -44,6 +45,7 @@ impl PreprocessorContext { renderer, mdbook_version: crate::MDBOOK_VERSION.to_string(), chapter_titles: RefCell::new(HashMap::new()), + __non_exhaustive: (), } } } diff --git a/src/renderer/mod.rs b/src/renderer/mod.rs index c7ff0215..15465fbc 100644 --- a/src/renderer/mod.rs +++ b/src/renderer/mod.rs @@ -51,7 +51,6 @@ pub trait Renderer { /// The context provided to all renderers. #[derive(Debug, Clone, PartialEq, Serialize, Deserialize)] -#[non_exhaustive] pub struct RenderContext { /// Which version of `mdbook` did this come from (as written in `mdbook`'s /// `Cargo.toml`). Useful if you know the renderer is only compatible with @@ -69,6 +68,8 @@ pub struct RenderContext { pub destination: PathBuf, #[serde(skip)] pub(crate) chapter_titles: HashMap, + #[serde(skip)] + __non_exhaustive: (), } impl RenderContext { @@ -85,6 +86,7 @@ impl RenderContext { root: root.into(), destination: destination.into(), chapter_titles: HashMap::new(), + __non_exhaustive: (), } }