pub struct ResolutionContext<'a> {
pub manifest: &'a Manifest,
pub cache: &'a Cache,
pub source_manager: &'a SourceManager,
pub operation_context: Option<&'a Arc<OperationContext>>,
}Expand description
Base resolution context with immutable shared state.
This context is passed to most resolution operations and provides access to the manifest, cache, source manager, and operation context.
Implements Copy because all fields are references (&'a T), making
it cheap to pass by value and enabling ergonomic usage in closures
and parallel processing contexts.
Fields§
§manifest: &'a ManifestThe project manifest with dependencies and configuration
cache: &'a CacheThe cache for worktrees and Git operations
source_manager: &'a SourceManagerThe source manager for resolving source URLs
operation_context: Option<&'a Arc<OperationContext>>Optional operation context for warnings and progress tracking
Trait Implementations§
Source§impl<'a> Clone for ResolutionContext<'a>
impl<'a> Clone for ResolutionContext<'a>
Source§fn clone(&self) -> ResolutionContext<'a>
fn clone(&self) -> ResolutionContext<'a>
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreimpl<'a> Copy for ResolutionContext<'a>
Auto Trait Implementations§
impl<'a> Freeze for ResolutionContext<'a>
impl<'a> !RefUnwindSafe for ResolutionContext<'a>
impl<'a> Send for ResolutionContext<'a>
impl<'a> Sync for ResolutionContext<'a>
impl<'a> Unpin for ResolutionContext<'a>
impl<'a> !UnwindSafe for ResolutionContext<'a>
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
Mutably borrows from an owned value. Read more
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
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>
Converts
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>
Converts
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