pub struct Analysis {
pub db: FileDb,
pub diagnostics: Vec<Diagnostic>,
pub modules: Vec<(FileId, PathBuf)>,
pub module_packages: Vec<Option<PackageId>>,
pub graph: Option<Graph>,
pub manifest: Option<FileId>,
pub definitions: Option<Definitions>,
pub file: Option<File>,
pub module: Option<Module>,
pub probe: ProbeResult,
pub index: Option<Index>,
}Expand description
What analyze found.
Fields§
§db: FileDbEvery file read, std included.
diagnostics: Vec<Diagnostic>§modules: Vec<(FileId, PathBuf)>The program’s own modules, by the paths they were read from, in load
order: modules[i] is ModuleId(i).
module_packages: Vec<Option<PackageId>>Each module’s package, parallel to modules. None for a loose
module (spec 3.3a §6).
graph: Option<Graph>The package graph, as far as it resolved.
manifest: Option<FileId>The root package’s nova.toml, when the program has one
(Program::manifest).
definitions: Option<Definitions>§file: Option<File>The merged AST the resolver built and the checker read: every
module’s items, std’s last, which Definitions::module_of maps to
their modules. Set whenever definitions is (spec 3.5a §15.2).
module: Option<Module>The typed module, partial when errors were found.
probe: ProbeResult§index: Option<Index>Every name the front end resolved, the resolver’s imports merged
in: None unless Options::index.
Auto Trait Implementations§
impl Freeze for Analysis
impl RefUnwindSafe for Analysis
impl Send for Analysis
impl Sync for Analysis
impl Unpin for Analysis
impl UnsafeUnpin for Analysis
impl UnwindSafe for Analysis
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