From 668cb12815bf07857f8ab54f79954af031edd426 Mon Sep 17 00:00:00 2001 From: Sebastian Thiel Date: Thu, 13 Feb 2025 17:03:24 +0100 Subject: [PATCH] feat: add `State::remove_(tree|resolve_undo)()` to remove possibly outdated extensions. --- gix-index/src/access/mod.rs | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/gix-index/src/access/mod.rs b/gix-index/src/access/mod.rs index 166dc9a4038..8cf9cd57610 100644 --- a/gix-index/src/access/mod.rs +++ b/gix-index/src/access/mod.rs @@ -553,6 +553,10 @@ impl State { pub fn tree(&self) -> Option<&extension::Tree> { self.tree.as_ref() } + /// Remove the `tree` extension. + pub fn remove_tree(&mut self) -> Option { + self.tree.take() + } /// Access the `link` extension. pub fn link(&self) -> Option<&extension::Link> { self.link.as_ref() @@ -561,6 +565,10 @@ impl State { pub fn resolve_undo(&self) -> Option<&extension::resolve_undo::Paths> { self.resolve_undo.as_ref() } + /// Remove the resolve-undo extension. + pub fn remove_resolve_undo(&mut self) -> Option { + self.resolve_undo.take() + } /// Obtain the untracked extension. pub fn untracked(&self) -> Option<&extension::UntrackedCache> { self.untracked.as_ref()