about summary refs log tree commit diff
diff options
context:
space:
mode:
authorbors <bors@rust-lang.org>2016-10-30 17:01:28 -0700
committerGitHub <noreply@github.com>2016-10-30 17:01:28 -0700
commitbfc9b29acc8bfdeee96e3d3cb466d6b7b411a7a7 (patch)
treee48fd9e1e80994411459118f166a2ba55b07d426
parentea20ab107eb03179e82ff42109d0aaa62aba48b8 (diff)
parentc751c08cf4c2a73b1a337fb74c4ccf0ee867bfac (diff)
downloadrust-bfc9b29acc8bfdeee96e3d3cb466d6b7b411a7a7.tar.gz
rust-bfc9b29acc8bfdeee96e3d3cb466d6b7b411a7a7.zip
Auto merge of #37460 - nrc:save-imports, r=eddyb
save-analysis: change imports to carry a ref id rather than their own…

… node id

To make jump to def for imports work

r? @eddyb
-rw-r--r--src/librustc_save_analysis/json_dumper.rs8
1 files changed, 4 insertions, 4 deletions
diff --git a/src/librustc_save_analysis/json_dumper.rs b/src/librustc_save_analysis/json_dumper.rs
index 0378d75cc6e..eb613c3afda 100644
--- a/src/librustc_save_analysis/json_dumper.rs
+++ b/src/librustc_save_analysis/json_dumper.rs
@@ -129,7 +129,7 @@ impl From<DefId> for Id {
 #[derive(Debug, RustcEncodable)]
 struct Import {
     kind: ImportKind,
-    id: Id,
+    ref_id: Option<Id>,
     span: SpanData,
     name: String,
     value: String,
@@ -146,7 +146,7 @@ impl From<ExternCrateData> for Import {
     fn from(data: ExternCrateData) -> Import {
         Import {
             kind: ImportKind::ExternCrate,
-            id: From::from(data.id),
+            ref_id: None,
             span: data.span,
             name: data.name,
             value: String::new(),
@@ -157,7 +157,7 @@ impl From<UseData> for Import {
     fn from(data: UseData) -> Import {
         Import {
             kind: ImportKind::Use,
-            id: From::from(data.id),
+            ref_id: data.mod_id.map(|id| From::from(id)),
             span: data.span,
             name: data.name,
             value: String::new(),
@@ -168,7 +168,7 @@ impl From<UseGlobData> for Import {
     fn from(data: UseGlobData) -> Import {
         Import {
             kind: ImportKind::GlobUse,
-            id: From::from(data.id),
+            ref_id: None,
             span: data.span,
             name: "*".to_owned(),
             value: data.names.join(", "),