pub enum ResolveOutcome {
Found(HostId),
Skipped(SourceKind),
Errored(SourceKind, Error),
}Expand description
One source’s outcome in a full-chain walk.
Returned by crate::Resolver::resolve_all (and the free
crate::resolve_all / [crate::resolve_all_with_transport] wrappers)
for every source in the chain, in chain order. Unlike crate::Resolver::resolve,
a full walk does not short-circuit on the first success or the first
error — every source is consulted.
Use this when you want to audit what each source would produce (diagnostics,
operator tooling, test harnesses). For normal resolution use
crate::resolve — it stops at the first usable source.
Variants§
Found(HostId)
The source produced a usable identifier.
Skipped(SourceKind)
The source had nothing to offer (file absent, endpoint unreachable, feature disabled, wrong platform).
Errored(SourceKind, Error)
The source produced a hard error. In a short-circuiting resolve()
this would have aborted the chain; in resolve_all the error is
captured here and the walk continues.
The outer SourceKind and the inner crate::Error::source_kind
are guaranteed to be equal. The field on this variant is the
authoritative provenance for callers matching outcomes —
introspecting the inner Error for its kind is equivalent but
noisier.