summaryrefslogtreecommitdiff
path: root/src/exec/state.rs
diff options
context:
space:
mode:
Diffstat (limited to 'src/exec/state.rs')
-rw-r--r--src/exec/state.rs23
1 files changed, 10 insertions, 13 deletions
diff --git a/src/exec/state.rs b/src/exec/state.rs
index ce30e042..56cf5f2e 100644
--- a/src/exec/state.rs
+++ b/src/exec/state.rs
@@ -91,7 +91,7 @@ impl Default for PageState {
fn default() -> Self {
let paper = PAPER_A4;
Self {
- class: paper.class,
+ class: paper.class(),
size: paper.size(),
margins: Sides::splat(None),
}
@@ -171,19 +171,16 @@ impl FontState {
/// The resolved family iterator.
pub fn families(&self) -> impl Iterator<Item = &str> + Clone {
- let head = if self.monospace {
- self.families.monospace.as_slice()
- } else {
- &[]
- };
+ let head = self
+ .monospace
+ .then(|| self.families.monospace.as_slice())
+ .unwrap_or_default();
- let core = self.families.list.iter().flat_map(move |family: &FontFamily| {
- match family {
- FontFamily::Named(name) => std::slice::from_ref(name),
- FontFamily::Serif => &self.families.serif,
- FontFamily::SansSerif => &self.families.sans_serif,
- FontFamily::Monospace => &self.families.monospace,
- }
+ let core = self.families.list.iter().flat_map(move |family| match family {
+ FontFamily::Named(name) => std::slice::from_ref(name),
+ FontFamily::Serif => &self.families.serif,
+ FontFamily::SansSerif => &self.families.sans_serif,
+ FontFamily::Monospace => &self.families.monospace,
});
head.iter()