pub(super) struct CallBindingResolution {
target: Option<GraphEntity>,
ambiguous: Option<NonZeroU32>,
absent: bool,
followed_export: bool,
dependencies: BTreeSet<CanonicalResolutionKey>,
}Expand description
One immutable call outcome, shared by identical source binding queries.
Fields§
§target: Option<GraphEntity>Actual admitted declaration, never an exporting file marker.
ambiguous: Option<NonZeroU32>Source-owned competing slots retain an honest bounded candidate count.
absent: boolSource proves this binding does not occupy the requested namespace.
followed_export: boolAn explicit export slot was followed, including unsupported or cyclic slots.
dependencies: BTreeSet<CanonicalResolutionKey>Invalidation causes are independent from the declaration target.
Implementations§
Source§impl CallBindingResolution
impl CallBindingResolution
Sourcepub(super) fn resolution(
&self,
relation: &SymbolRelation,
) -> Result<RelationResolution, CliError>
pub(super) fn resolution( &self, relation: &SymbolRelation, ) -> Result<RelationResolution, CliError>
Construct a canonical outcome without reinterpreting lookup markers as targets.
Sourcepub(super) fn external_target(&self) -> Option<&GraphEntity>
pub(super) fn external_target(&self) -> Option<&GraphEntity>
Borrow an actual external entity that publication must stage with its relation.
Sourcepub(super) fn dependencies(&self) -> &BTreeSet<CanonicalResolutionKey>
pub(super) fn dependencies(&self) -> &BTreeSet<CanonicalResolutionKey>
Borrow causes retained even when forwarding cannot establish a target.
Sourcefn retained_bytes(&self) -> u64
fn retained_bytes(&self) -> u64
Account this uniquely cached outcome and its owned payloads.
Trait Implementations§
Source§impl Default for CallBindingResolution
impl Default for CallBindingResolution
Source§fn default() -> CallBindingResolution
fn default() -> CallBindingResolution
Returns the “default value” for a type. Read more
Auto Trait Implementations§
impl Freeze for CallBindingResolution
impl RefUnwindSafe for CallBindingResolution
impl Send for CallBindingResolution
impl Sync for CallBindingResolution
impl Unpin for CallBindingResolution
impl UnsafeUnpin for CallBindingResolution
impl UnwindSafe for CallBindingResolution
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
§impl<'a, T> FromIn<'a, T> for T
impl<'a, T> FromIn<'a, T> for T
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
§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