pub struct DiscoveredManifest {
pub path: PathBuf,
pub uri_path: PathBuf,
pub display_path: PathBuf,
pub ecosystem: Arc<dyn Ecosystem>,
}Expand description
One manifest discovered by walk, already routed to its owning ecosystem.
Fields§
§path: PathBufAbsolute (or walk-root-relative, when the walked root itself was relative)
filesystem path to read the manifest’s content from — for a symlinked manifest under
--follow-symlinks, this is the resolved, canonicalized real path (FR-007), never the
symlink itself.
uri_path: PathBufAbsolute filesystem path used to derive the manifest’s URI for parsing and lockfile/
in-use-version discovery (review finding M2). This must stay the manifest’s encountered
path — the symlink’s own location, not its resolved target’s — because lockfile lookup
searches ancestor directories starting from this URI: a manifest symlinked into
directory A, whose target lives in directory B, must find A’s adjacent lockfile, not
B’s (or B’s absence of one), matching US-002’s own shared-manifest scenario. Identical
to path for every non-symlinked (or --follow-symlinks-disabled)
manifest.
display_path: PathBufThe manifest path as it should be displayed/reported — relative to the walked root
when possible, matching crate::report::CheckFinding::manifest_path.
ecosystem: Arc<dyn Ecosystem>The ecosystem deps_core::EcosystemRegistry::for_uri routed this file to.
Auto Trait Implementations§
impl !RefUnwindSafe for DiscoveredManifest
impl !UnwindSafe for DiscoveredManifest
impl Freeze for DiscoveredManifest
impl Send for DiscoveredManifest
impl Sync for DiscoveredManifest
impl Unpin for DiscoveredManifest
impl UnsafeUnpin for DiscoveredManifest
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
Source§fn in_current_span(self) -> Instrumented<Self> ⓘ
fn in_current_span(self) -> Instrumented<Self> ⓘ
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more