]> git.lizzy.rs Git - rust.git/commitdiff
Use Default everywhere
authorAleksey Kladov <aleksey.kladov@gmail.com>
Sun, 4 Nov 2018 11:09:21 +0000 (14:09 +0300)
committerAleksey Kladov <aleksey.kladov@gmail.com>
Sun, 4 Nov 2018 11:09:21 +0000 (14:09 +0300)
crates/ra_analysis/src/db.rs
crates/ra_analysis/src/imp.rs
crates/ra_analysis/src/lib.rs
crates/ra_analysis/src/mock_analysis.rs
crates/ra_lsp_server/src/main_loop/mod.rs
crates/ra_lsp_server/src/path_map.rs
crates/ra_lsp_server/src/server_world.rs

index 9548ec602d2b92ddd02e3999f3c2f138c0abcc93..627512553024fcddaf5e8dc838f0967b67f4fb40 100644 (file)
@@ -2,7 +2,7 @@
 
 use ra_editor::LineIndex;
 use ra_syntax::{File, SyntaxNode};
-use salsa;
+use salsa::{self, Database};
 
 use crate::{
     db,
@@ -15,7 +15,7 @@
     Cancelable, Canceled, FileId,
 };
 
-#[derive(Default, Debug)]
+#[derive(Debug)]
 pub(crate) struct RootDatabase {
     runtime: salsa::Runtime<RootDatabase>,
 }
@@ -26,6 +26,21 @@ fn salsa_runtime(&self) -> &salsa::Runtime<RootDatabase> {
     }
 }
 
+impl Default for RootDatabase {
+    fn default() -> RootDatabase {
+        let mut db = RootDatabase {
+            runtime: Default::default(),
+        };
+        db.query_mut(crate::input::SourceRootQuery)
+            .set(crate::input::WORKSPACE, Default::default());
+        db.query_mut(crate::input::CrateGraphQuery)
+            .set((), Default::default());
+        db.query_mut(crate::input::LibrariesQuery)
+            .set((), Default::default());
+        db
+    }
+}
+
 pub(crate) fn check_canceled(db: &impl salsa::Database) -> Cancelable<()> {
     if db.salsa_runtime().is_current_revision_canceled() {
         Err(Canceled)
index 77dd71dcf1fdd9f403c81f49344d0dc1bf9f4cc1..4f337d1631c63f05ff701b253b3c65287be2f628 100644 (file)
@@ -86,22 +86,12 @@ fn resolve(
     }
 }
 
-#[derive(Debug)]
+#[derive(Debug, Default)]
 pub(crate) struct AnalysisHostImpl {
     db: db::RootDatabase,
 }
 
 impl AnalysisHostImpl {
-    pub fn new() -> AnalysisHostImpl {
-        let mut db = db::RootDatabase::default();
-        db.query_mut(crate::input::SourceRootQuery)
-            .set(WORKSPACE, Default::default());
-        db.query_mut(crate::input::CrateGraphQuery)
-            .set((), Default::default());
-        db.query_mut(crate::input::LibrariesQuery)
-            .set((), Default::default());
-        AnalysisHostImpl { db }
-    }
     pub fn analysis(&self) -> AnalysisImpl {
         AnalysisImpl {
             db: self.db.snapshot(),
index 6565f69fbb90cf1b3036a9bd72032438e1b2ccdf..4e4c65f084793b78e7893e0f11f482098d7e0e6e 100644 (file)
@@ -99,17 +99,12 @@ pub fn set_file_resolver(&mut self, file_resolver: Arc<FileResolver>) {
 }
 
 /// `AnalysisHost` stores the current state of the world.
-#[derive(Debug)]
+#[derive(Debug, Default)]
 pub struct AnalysisHost {
     imp: AnalysisHostImpl,
 }
 
 impl AnalysisHost {
-    pub fn new() -> AnalysisHost {
-        AnalysisHost {
-            imp: AnalysisHostImpl::new(),
-        }
-    }
     /// Returns a snapshot of the current state, which you can query for
     /// semantic information.
     pub fn analysis(&self) -> Analysis {
index 76100f5484e4d71f98b704000738154c22074eb5..a7134a0e66876d3be3154eee0cb2340161ff8b3f 100644 (file)
@@ -82,7 +82,7 @@ pub fn id_of(&self, path: &str) -> FileId {
         FileId(idx as u32 + 1)
     }
     pub fn analysis_host(self) -> AnalysisHost {
-        let mut host = AnalysisHost::new();
+        let mut host = AnalysisHost::default();
         let mut file_map = Vec::new();
         let mut change = AnalysisChange::new();
         for (id, (path, contents)) in self.files.into_iter().enumerate() {
index c568706bdcc72118158e62d32be84ac3e261fd09..1eb14753962b0ac49c46c33db234625e4b825309 100644 (file)
@@ -61,7 +61,7 @@ pub fn main_loop(
     let (ws_worker, ws_watcher) = workspace_loader();
 
     info!("server initialized, serving requests");
-    let mut state = ServerWorldState::new();
+    let mut state = ServerWorldState::default();
 
     let mut pending_requests = FxHashSet::default();
     let mut subs = Subscriptions::new();
index dd09fa10acb8efde30bce28d7984cc41e3598767..87eabf9bee404cb574a53f0e1ad7c146b721329b 100644 (file)
@@ -28,9 +28,6 @@ fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result {
 }
 
 impl PathMap {
-    pub fn new() -> PathMap {
-        Default::default()
-    }
     pub fn get_or_insert(&mut self, path: PathBuf, root: Root) -> (bool, FileId) {
         let mut inserted = false;
         let file_id = self
@@ -117,7 +114,7 @@ mod test {
 
     #[test]
     fn test_resolve() {
-        let mut m = PathMap::new();
+        let mut m = PathMap::default();
         let (_, id1) = m.get_or_insert(PathBuf::from("/foo"), Root::Workspace);
         let (_, id2) = m.get_or_insert(PathBuf::from("/foo/bar.rs"), Root::Workspace);
         assert_eq!(m.resolve(id1, &RelativePath::new("bar.rs")), Some(id2),)
index 3e76d2527b3b2d7a166633fb29af168a1c1b826a..3e7670fccec063dbf359b9cab0480c74b2f9f4ee 100644 (file)
@@ -17,7 +17,7 @@
     Result,
 };
 
-#[derive(Debug)]
+#[derive(Debug, Default)]
 pub struct ServerWorldState {
     pub workspaces: Arc<Vec<CargoWorkspace>>,
     pub analysis_host: AnalysisHost,
@@ -32,14 +32,6 @@ pub struct ServerWorld {
 }
 
 impl ServerWorldState {
-    pub fn new() -> ServerWorldState {
-        ServerWorldState {
-            workspaces: Arc::new(Vec::new()),
-            analysis_host: AnalysisHost::new(),
-            path_map: PathMap::new(),
-            mem_map: FxHashMap::default(),
-        }
-    }
     pub fn apply_fs_changes(&mut self, events: Vec<FileEvent>) {
         let mut change = AnalysisChange::new();
         let mut inserted = false;