diff options
| author | Laurenz <laurmaedje@gmail.com> | 2023-05-11 11:27:00 +0200 |
|---|---|---|
| committer | Laurenz <laurmaedje@gmail.com> | 2023-05-11 11:27:00 +0200 |
| commit | 2f0b5eeae09bd880e4552bb83e44d9cd32571c58 (patch) | |
| tree | 6989d423e6bb614b3224be53140e4d649033aeac /src/export/pdf | |
| parent | 47dff3765de863554ca296448555599fc50d4a8a (diff) | |
More efficient introspection
Switches from a mutable locator to one based on tracked chains and optimizes query performance.
Diffstat (limited to 'src/export/pdf')
| -rw-r--r-- | src/export/pdf/outline.rs | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/src/export/pdf/outline.rs b/src/export/pdf/outline.rs index c156ecaf..d4e4c8ef 100644 --- a/src/export/pdf/outline.rs +++ b/src/export/pdf/outline.rs @@ -12,7 +12,7 @@ use crate::util::NonZeroExt; pub fn write_outline(ctx: &mut PdfContext) -> Option<Ref> { let mut tree: Vec<HeadingNode> = vec![]; for heading in ctx.introspector.query(&item!(heading_func).select()) { - let leaf = HeadingNode::leaf(heading); + let leaf = HeadingNode::leaf((*heading).clone()); if let Some(last) = tree.last_mut() { if last.try_insert(leaf.clone(), NonZeroUsize::ONE) { continue; |
