From 5750ee69ff4a131c08d0d9b3298c78b92b566f09 Mon Sep 17 00:00:00 2001
From: Aleksey Kladov <aleksey.kladov@gmail.com>
Date: Thu, 24 Oct 2019 12:32:19 +0300
Subject: add --with-deps option to analysis-stats

---
 crates/ra_cli/src/analysis_stats.rs | 16 ++++++++--------
 crates/ra_cli/src/main.rs           |  2 ++
 2 files changed, 10 insertions(+), 8 deletions(-)

(limited to 'crates/ra_cli/src')

diff --git a/crates/ra_cli/src/analysis_stats.rs b/crates/ra_cli/src/analysis_stats.rs
index cda5cafb8..04aba3743 100644
--- a/crates/ra_cli/src/analysis_stats.rs
+++ b/crates/ra_cli/src/analysis_stats.rs
@@ -13,6 +13,7 @@ pub fn run(
     memory_usage: bool,
     path: &Path,
     only: Option<&str>,
+    with_deps: bool,
 ) -> Result<()> {
     let db_load_time = Instant::now();
     let (mut host, roots) = ra_batch::load_cargo(path)?;
@@ -23,18 +24,17 @@ pub fn run(
     let mut visited_modules = HashSet::new();
     let mut visit_queue = Vec::new();
 
-    let members = roots
-        .into_iter()
-        .filter_map(
-            |(source_root_id, project_root)| {
-                if project_root.is_member() {
+    let members =
+        roots
+            .into_iter()
+            .filter_map(|(source_root_id, project_root)| {
+                if with_deps || project_root.is_member() {
                     Some(source_root_id)
                 } else {
                     None
                 }
-            },
-        )
-        .collect::<HashSet<_>>();
+            })
+            .collect::<HashSet<_>>();
 
     for krate in Crate::all(db) {
         let module = krate.root_module(db).expect("crate without root module");
diff --git a/crates/ra_cli/src/main.rs b/crates/ra_cli/src/main.rs
index 2405eb4f4..a31fd5d6a 100644
--- a/crates/ra_cli/src/main.rs
+++ b/crates/ra_cli/src/main.rs
@@ -96,6 +96,7 @@ fn main() -> Result<()> {
             };
             let memory_usage = matches.contains("--memory-usage");
             let only: Option<String> = matches.opt_value_from_str(["-o", "--only"])?;
+            let with_deps: bool = matches.contains("--with-deps");
             let path = {
                 let mut trailing = matches.free()?;
                 if trailing.len() != 1 {
@@ -109,6 +110,7 @@ fn main() -> Result<()> {
                 memory_usage,
                 path.as_ref(),
                 only.as_ref().map(String::as_ref),
+                with_deps,
             )?;
         }
         "analysis-bench" => {
-- 
cgit v1.2.3