pub struct ResolutionTrace {
pub query: String,
pub symbol: String,
pub domain: ResolutionDomain,
pub scope: Option<ResolutionScope>,
pub strictness: ResolverStrictness,
pub fallbacks: ResolutionFallbackPolicy,
pub candidates: Vec<ResolutionCandidate>,
pub import: Option<ImportResolution>,
pub outcome: ResolutionOutcome,
pub target: Option<ResolutionTarget>,
pub unresolved: Vec<UnresolvedRef>,
}Expand description
Structured explanation of one domain-specific name lookup.
Fields§
§query: StringPreserves the original query exactly as supplied by the caller.
symbol: StringContains the unqualified symbol name extracted from query.
domain: ResolutionDomainIdentifies the resolver domain whose definition rules were applied.
scope: Option<ResolutionScope>Contains the exact module scope, or None for an unscoped lookup.
strictness: ResolverStrictnessRecords the resolver strictness active on the MIB.
fallbacks: ResolutionFallbackPolicyDescribes the fallback tiers enabled for this domain, strictness, and name.
candidates: Vec<ResolutionCandidate>Every cross-kind definition with this name, deterministically ordered.
import: Option<ImportResolution>Exact pre-collapse import provenance for the scope, when it imports the name.
outcome: ResolutionOutcomeClassifies the final lookup result.
target: Option<ResolutionTarget>Contains the selected definition exactly when outcome is resolved.
unresolved: Vec<UnresolvedRef>Lists unresolved references with the traced symbol name across loaded modules.
The list is diagnostic provenance and does not determine outcome.
Trait Implementations§
Source§impl Clone for ResolutionTrace
impl Clone for ResolutionTrace
Source§fn clone(&self) -> ResolutionTrace
fn clone(&self) -> ResolutionTrace
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more