From 2f0b5eeae09bd880e4552bb83e44d9cd32571c58 Mon Sep 17 00:00:00 2001 From: Laurenz Date: Thu, 11 May 2023 11:27:00 +0200 Subject: More efficient introspection Switches from a mutable locator to one based on tracked chains and optimizes query performance. --- src/export/pdf/outline.rs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'src/export/pdf') 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 { let mut tree: Vec = 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; -- cgit v1.2.3