feat(tvix-castore/import) have IngestionEntry.path() return &Path

There's no need for this to be a &PathBuf.

Change-Id: I2d4126d57cfd8ddaad5dd327943b70b83d45c749
Reviewed-on: https://cl.tvl.fyi/c/depot/+/11589
Tested-by: BuildkiteCI
Reviewed-by: Connor Brewster <cbrewster@hey.com>
This commit is contained in:
Florian Klink 2024-05-05 11:08:59 +03:00 committed by flokli
parent 08feea4817
commit 281bd46a43
2 changed files with 4 additions and 3 deletions

View file

@ -288,12 +288,12 @@ impl IngestionEntryGraph {
None => self.graph.add_node(entry),
};
// A path with 1 component is the root node
// for archives, a path with 1 component is the root node
if path.components().count() == 1 {
// We expect archives to contain a single root node, if there is another root node
// entry with a different path name, this is unsupported.
if let Some(root_node) = self.root_node {
if self.get_node(root_node).path() != &path {
if self.get_node(root_node).path() != path.as_ref() {
return Err(Error::UnexpectedNumberOfTopLevelEntries);
}
}

View file

@ -13,6 +13,7 @@ use crate::proto::DirectoryNode;
use crate::proto::FileNode;
use crate::proto::SymlinkNode;
use crate::B3Digest;
use crate::Path;
use futures::{Stream, StreamExt};
use tracing::Level;
@ -183,7 +184,7 @@ pub enum IngestionEntry {
}
impl IngestionEntry {
fn path(&self) -> &PathBuf {
fn path(&self) -> &Path {
match self {
IngestionEntry::Regular { path, .. } => path,
IngestionEntry::Symlink { path, .. } => path,