Expose version string of crates fom HIR

This commit is contained in:
Lukas Wirth 2021-10-30 16:17:04 +02:00
parent b9fa37f5b4
commit 52f5af7165
8 changed files with 111 additions and 1 deletions

View file

@ -136,6 +136,7 @@ impl ChangeFixture {
file_id,
meta.edition,
Some(crate_name.clone().into()),
None,
meta.cfg.clone(),
meta.cfg,
meta.env,
@ -168,6 +169,7 @@ impl ChangeFixture {
crate_root,
Edition::CURRENT,
Some(CrateName::new("test").unwrap().into()),
None,
default_cfg.clone(),
default_cfg,
Env::default(),
@ -202,6 +204,7 @@ impl ChangeFixture {
core_file,
Edition::Edition2021,
Some(CrateDisplayName::from_canonical_name("core".to_string())),
None,
CfgOptions::default(),
CfgOptions::default(),
Env::default(),
@ -235,6 +238,7 @@ impl ChangeFixture {
proc_lib_file,
Edition::Edition2021,
Some(CrateDisplayName::from_canonical_name("proc_macros".to_string())),
None,
CfgOptions::default(),
CfgOptions::default(),
Env::default(),

View file

@ -192,6 +192,7 @@ pub struct ProcMacro {
pub struct CrateData {
pub root_file_id: FileId,
pub edition: Edition,
pub version: Option<String>,
/// A name used in the package's project declaration: for Cargo projects,
/// its `[package].name` can be different for other project types or even
/// absent (a dummy crate for the code snippet, for example).
@ -250,6 +251,7 @@ impl CrateGraph {
file_id: FileId,
edition: Edition,
display_name: Option<CrateDisplayName>,
version: Option<String>,
cfg_options: CfgOptions,
potential_cfg_options: CfgOptions,
env: Env,
@ -258,6 +260,7 @@ impl CrateGraph {
let data = CrateData {
root_file_id: file_id,
edition,
version,
display_name,
cfg_options,
potential_cfg_options,
@ -563,6 +566,7 @@ mod tests {
FileId(1u32),
Edition2018,
None,
None,
CfgOptions::default(),
CfgOptions::default(),
Env::default(),
@ -572,6 +576,7 @@ mod tests {
FileId(2u32),
Edition2018,
None,
None,
CfgOptions::default(),
CfgOptions::default(),
Env::default(),
@ -581,6 +586,7 @@ mod tests {
FileId(3u32),
Edition2018,
None,
None,
CfgOptions::default(),
CfgOptions::default(),
Env::default(),
@ -604,6 +610,7 @@ mod tests {
FileId(1u32),
Edition2018,
None,
None,
CfgOptions::default(),
CfgOptions::default(),
Env::default(),
@ -613,6 +620,7 @@ mod tests {
FileId(2u32),
Edition2018,
None,
None,
CfgOptions::default(),
CfgOptions::default(),
Env::default(),
@ -633,6 +641,7 @@ mod tests {
FileId(1u32),
Edition2018,
None,
None,
CfgOptions::default(),
CfgOptions::default(),
Env::default(),
@ -642,6 +651,7 @@ mod tests {
FileId(2u32),
Edition2018,
None,
None,
CfgOptions::default(),
CfgOptions::default(),
Env::default(),
@ -651,6 +661,7 @@ mod tests {
FileId(3u32),
Edition2018,
None,
None,
CfgOptions::default(),
CfgOptions::default(),
Env::default(),
@ -671,6 +682,7 @@ mod tests {
FileId(1u32),
Edition2018,
None,
None,
CfgOptions::default(),
CfgOptions::default(),
Env::default(),
@ -680,6 +692,7 @@ mod tests {
FileId(2u32),
Edition2018,
None,
None,
CfgOptions::default(),
CfgOptions::default(),
Env::default(),