Expand description
A bunch of methods and structures more or less related to resolving imports.
Re-exportsΒ§
use std::cmp::Ordering;πuse std::mem;πuse rustc_ast::NodeId;πuse rustc_data_structures::fx::FxHashSet;πuse rustc_data_structures::fx::FxIndexSet;πuse rustc_data_structures::intern::Interned;πuse rustc_errors::Applicability;πuse rustc_errors::BufferedEarlyLint;πuse rustc_errors::Diagnostic;πuse rustc_expand::base::SyntaxExtensionKind;πuse rustc_hir::def;πuse rustc_hir::def::DefKind;πuse rustc_hir::def_id::DefId;πuse rustc_hir::def_id::LocalDefId;πuse rustc_hir::def_id::LocalDefIdMap;πuse rustc_lint_defs::LintId;πuse rustc_lint_defs::builtin::AMBIGUOUS_GLOB_REEXPORTS;πuse rustc_lint_defs::builtin::EXPORTED_PRIVATE_DEPENDENCIES;πuse rustc_lint_defs::builtin::HIDDEN_GLOB_REEXPORTS;πuse rustc_lint_defs::builtin::PUB_USE_OF_PRIVATE_EXTERN_CRATE;πuse rustc_lint_defs::builtin::REDUNDANT_IMPORTS;πuse rustc_lint_defs::builtin::UNUSED_IMPORTS;πuse rustc_middle::middle::resolve::AmbigModChild;πuse rustc_middle::middle::resolve::ModChild;πuse rustc_middle::middle::resolve::PartialRes;πuse rustc_middle::middle::resolve::Reexport;πuse rustc_middle::ty::Visibility;πuse rustc_session::diagnostics::feature_err;πuse rustc_span::edit_distance::find_best_match_for_name;πuse rustc_span::hygiene::LocalExpnId;πuse rustc_span::Ident;πuse rustc_span::OrdSpan;πuse rustc_span::Span;πuse rustc_span::Symbol;πuse rustc_span::kw;πuse rustc_span::span_bug;πuse rustc_span::sym;πuse tracing::debug;πuse crate::Namespace;πuse crate::diagnostics::impls::OnUnknownData;πuse crate::diagnostics::impls::Suggestion;πuse crate::diagnostics;πuse crate::diagnostics::CannotBeReexportedCratePublic;πuse crate::diagnostics::CannotBeReexportedCratePublicNS;πuse crate::diagnostics::CannotBeReexportedPrivate;πuse crate::diagnostics::CannotBeReexportedPrivateNS;πuse crate::diagnostics::CannotDetermineImportResolution;πuse crate::diagnostics::CannotGlobImportAllCrates;πuse crate::diagnostics::ConsiderAddingMacroExport;πuse crate::diagnostics::ConsiderMarkingAsPub;πuse crate::diagnostics::ConsiderMarkingAsPubCrate;πuse crate::ref_mut::CmCell;πuse crate::ref_mut::CmRefCell;πuse crate::AmbiguityError;πuse crate::BindingKey;πuse crate::Decl;πuse crate::DeclData;πuse crate::DeclKind;πuse crate::Determinacy;πuse crate::Finalize;πuse crate::IdentKey;πuse crate::ImportSuggestion;πuse crate::ImportSummary;πuse crate::LocalModule;πuse crate::ModuleOrUniformRoot;πuse crate::ParentScope;πuse crate::PathResult;πuse crate::PerNS;πuse crate::Res;πuse crate::ResolutionError;πuse crate::Resolver;πuse crate::ScopeSet;πuse crate::Segment;πuse crate::Used;πuse crate::module_to_string;πuse crate::names_to_string;πuse crate::Namespace::*;π
ModulesΒ§
- cycle_
detection π
StructsΒ§
- Import
Data π - One import.
- Import
Resolution π - Name
Resolution π - Records information about the resolution of a name in a namespace of a module.
- Unresolved
Import πError - An error that may be transformed into a diagnostic later. Used to combine multiple unresolved import errors within the same use tree into a single diagnostic.
EnumsΒ§
- Import
Kind π - Contains data for specific kinds of imports.
- Import
Resolution πKind - Pending
Decl π - A potential import declaration in the process of being planted into a module.
Also used for lazily planting names from
--externflags to extern prelude.
FunctionsΒ§
- import_
kind_ πto_ string - import_
path_ πto_ string - pub_
use_ πof_ private_ extern_ crate_ hack - remove_
same_ πimport - Removes identical import layers from two declarations.
Type AliasesΒ§
- Import π
Internedis used because values of this type have βidentityβ and compare as unequal even if they have the same contents.- Name
Resolution πRef Internedis used because values of this type have βidentityβ and compare as unequal even if they have the same contents.