From a45c3388a642d6d7321b5c5b684d3582e91cff41 Mon Sep 17 00:00:00 2001 From: Laurenz Date: Wed, 9 Jul 2025 15:40:22 +0200 Subject: [PATCH] More consistent `Packed` to `Content` conversion methods (#6579) --- .../src/foundations/content/packed.rs | 14 ++++++++++---- .../typst-library/src/foundations/content/raw.rs | 2 +- 2 files changed, 11 insertions(+), 5 deletions(-) diff --git a/crates/typst-library/src/foundations/content/packed.rs b/crates/typst-library/src/foundations/content/packed.rs index 71bb66a94..e99162629 100644 --- a/crates/typst-library/src/foundations/content/packed.rs +++ b/crates/typst-library/src/foundations/content/packed.rs @@ -64,6 +64,16 @@ impl Packed { self.0 } + /// Pack back into a reference to content. + pub fn pack_ref(&self) -> &Content { + &self.0 + } + + /// Pack back into a mutable reference to content. + pub fn pack_mut(&mut self) -> &mut Content { + &mut self.0 + } + /// Extract the raw underlying element. pub fn unpack(self) -> T { // This function doesn't yet need owned self, but might in the future. @@ -94,10 +104,6 @@ impl Packed { pub fn set_location(&mut self, location: Location) { self.0.set_location(location); } - - pub fn as_content(&self) -> &Content { - &self.0 - } } impl AsRef for Packed { diff --git a/crates/typst-library/src/foundations/content/raw.rs b/crates/typst-library/src/foundations/content/raw.rs index f5dfffd73..dde26bd79 100644 --- a/crates/typst-library/src/foundations/content/raw.rs +++ b/crates/typst-library/src/foundations/content/raw.rs @@ -141,7 +141,7 @@ impl RawContent { /// Clones a packed element into new raw content. pub(super) fn clone_impl(elem: &Packed) -> Self { - let raw = &elem.as_content().0; + let raw = &elem.pack_ref().0; let header = raw.header(); RawContent::create( elem.as_ref().clone(),