]> git.lizzy.rs Git - rust.git/commitdiff
migrate analysis and server to 2018
authorAleksey Kladov <aleksey.kladov@gmail.com>
Mon, 15 Oct 2018 17:15:53 +0000 (20:15 +0300)
committerAleksey Kladov <aleksey.kladov@gmail.com>
Mon, 15 Oct 2018 17:15:53 +0000 (20:15 +0300)
21 files changed:
crates/ra_analysis/Cargo.toml
crates/ra_analysis/src/db/imp.rs
crates/ra_analysis/src/db/mod.rs
crates/ra_analysis/src/descriptors.rs
crates/ra_analysis/src/imp.rs
crates/ra_analysis/src/lib.rs
crates/ra_analysis/src/module_map.rs
crates/ra_analysis/src/queries.rs
crates/ra_analysis/src/roots.rs
crates/ra_analysis/src/symbol_index.rs
crates/ra_lsp_server/Cargo.toml
crates/ra_lsp_server/src/conv.rs
crates/ra_lsp_server/src/lib.rs
crates/ra_lsp_server/src/main_loop/handlers.rs
crates/ra_lsp_server/src/main_loop/mod.rs
crates/ra_lsp_server/src/project_model.rs
crates/ra_lsp_server/src/server_world.rs
crates/ra_lsp_server/src/thread_watcher.rs
crates/ra_lsp_server/src/vfs.rs
crates/ra_lsp_server/tests/heavy_tests/main.rs
crates/ra_lsp_server/tests/heavy_tests/support.rs

index a82e1761c2874e6a0b5ba2092ded0df01dc131ac..28d95c58139f560f376fe36945ef559731753add 100644 (file)
@@ -1,4 +1,5 @@
 [package]
+edition = "2018"
 name = "ra_analysis"
 version = "0.1.0"
 authors = ["Aleksey Kladov <aleksey.kladov@gmail.com>"]
index 36f6cf2907ef6c3681f988660a0e512d19bf7bc4..7669b6184550c61efd33315987dd8964765cb47d 100644 (file)
@@ -7,7 +7,7 @@
 };
 use rustc_hash::FxHashMap;
 use salsa;
-use {FileId, imp::FileResolverImp};
+use crate::{FileId, imp::FileResolverImp};
 use super::{State, Query, QueryCtx};
 
 pub(super) type Data = Arc<Any + Send + Sync + 'static>;
@@ -51,7 +51,7 @@ pub(crate) trait EvalQuery {
     type Output;
     fn query_type(&self) -> salsa::QueryTypeId;
     fn f(&self) -> salsa::QueryFn<State, Data>;
-    fn get(&self, &QueryCtx, Self::Params) -> Arc<Self::Output>;
+    fn get(&self, ctx: &QueryCtx, params: Self::Params) -> Arc<Self::Output>;
 }
 
 impl<T, R> EvalQuery for Query<T, R>
index 22769d1120e504452e51de960f93aed61a80b258..4eb7d922d9bc46c35b779d3aa5236ec2095c8077 100644 (file)
@@ -5,7 +5,7 @@
 };
 use im;
 use salsa;
-use {FileId, imp::FileResolverImp};
+use crate::{FileId, imp::FileResolverImp};
 
 #[derive(Debug, Default, Clone)]
 pub(crate) struct State {
@@ -75,8 +75,8 @@ pub(crate) fn file_set(ctx: QueryCtx) -> Arc<(Vec<FileId>, FileResolverImp)> {
 impl QueryRegistry {
     fn new() -> QueryRegistry {
         let mut reg = QueryRegistry { imp: imp::QueryRegistry::new() };
-        ::queries::register_queries(&mut reg);
-        ::module_map::register_queries(&mut reg);
+        crate::queries::register_queries(&mut reg);
+        crate::module_map::register_queries(&mut reg);
         reg
     }
     pub(crate) fn add<Q: imp::EvalQuery>(&mut self, q: Q, name: &'static str) {
index faf945a41f037f478355a667fa7e99aac6248535..f26dac8753ebac482a97c0ecea33b22d551047e4 100644 (file)
@@ -7,7 +7,7 @@
     ast::{self, NameOwner, AstNode},
     text_utils::is_subrange
 };
-use {
+use crate::{
     FileId,
     imp::FileResolverImp,
 };
@@ -271,4 +271,4 @@ fn param_list(node: ast::FnDef) -> Vec<String> {
         }
         res
     }
-}
\ No newline at end of file
+}
index aad54b977133d32fc185cd713e3b5ea66f527823..26f5e175b77e78479c85d41292fa24fc8f551f82 100644 (file)
@@ -17,7 +17,7 @@
     ast::{self, NameOwner, ArgListOwner, Expr},
 };
 
-use {
+use crate::{
     FileId, FileResolver, Query, Diagnostic, SourceChange, SourceFileEdit, Position, FileSystemEdit,
     JobToken, CrateGraph, CrateId,
     roots::{SourceRoot, ReadonlySourceRoot, WritableSourceRoot},
@@ -458,4 +458,4 @@ pub fn arg_list(&self) -> Option<ast::ArgList> {
             FnCallNode::MethodCallExpr(expr) => expr.arg_list()
         }
     }
-}
\ No newline at end of file
+}
index 1aca72ae0073217f6bcc4511ccc4733da3ed8ee9..86c66236ce9ddd3a8ce36fcd73a7efd83f80a16d 100644 (file)
 
 use relative_path::{RelativePath, RelativePathBuf};
 use ra_syntax::{File, TextRange, TextUnit, AtomEdit};
-use imp::{AnalysisImpl, AnalysisHostImpl, FileResolverImp};
 use rustc_hash::FxHashMap;
+use crate::imp::{AnalysisImpl, AnalysisHostImpl, FileResolverImp};
 
 pub use ra_editor::{
     StructureNode, LineIndex, FileSymbol,
     Runnable, RunnableKind, HighlightedRange, CompletionItem,
     Fold, FoldKind
 };
-pub use job::{JobToken, JobHandle};
-pub use descriptors::FnDescriptor;
+pub use crate::{
+    job::{JobToken, JobHandle},
+    descriptors::FnDescriptor,
+};
 
 #[derive(Debug, Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash)]
 pub struct FileId(pub u32);
index a21f55fff1e6863c281aa989451a2c7b0c77dc39..c77c5cec61a0bd1f6386b9c80b27291a34e7793c 100644 (file)
@@ -1,5 +1,5 @@
 use std::sync::Arc;
-use {
+use crate::{
     FileId,
     db::{
         Query, QueryRegistry, QueryCtx,
@@ -38,7 +38,7 @@ mod tests {
     use std::collections::HashMap;
     use im;
     use relative_path::{RelativePath, RelativePathBuf};
-    use {
+    use crate::{
         db::{Db},
         imp::FileResolverImp,
         FileId, FileResolver,
index 062a2f4203f1ce94abf413e6157b40366827b1b0..613bf1e61031f40fd28eba72fd39396808150d5e 100644 (file)
@@ -1,13 +1,13 @@
 use std::sync::Arc;
 use ra_syntax::File;
 use ra_editor::LineIndex;
-use {
+use crate::{
     FileId,
     db::{Query, QueryCtx, QueryRegistry},
     symbol_index::SymbolIndex,
 };
 
-pub(crate) use db::{file_text, file_set};
+pub(crate) use crate::db::{file_text, file_set};
 
 pub(crate) fn file_syntax(ctx: QueryCtx, file_id: FileId) -> File {
     (&*ctx.get(FILE_SYNTAX, file_id)).clone()
index 32a8c5bd05f8a7208cd0077fa5d4f9dccb9626ea..208acc4c22f4d06bc23c633ecc9574d4fd6dc019 100644 (file)
@@ -9,7 +9,7 @@
 use ra_editor::LineIndex;
 use ra_syntax::File;
 
-use {
+use crate::{
     FileId,
     imp::FileResolverImp,
     symbol_index::SymbolIndex,
@@ -62,23 +62,23 @@ pub fn apply_changes(
 
 impl SourceRoot for WritableSourceRoot {
     fn module_tree(&self) -> Arc<ModuleTreeDescriptor> {
-        self.db.make_query(::module_map::module_tree)
+        self.db.make_query(crate::module_map::module_tree)
     }
 
     fn contains(&self, file_id: FileId) -> bool {
         self.db.state().file_map.contains_key(&file_id)
     }
     fn lines(&self, file_id: FileId) -> Arc<LineIndex> {
-        self.db.make_query(|ctx| ::queries::file_lines(ctx, file_id))
+        self.db.make_query(|ctx| crate::queries::file_lines(ctx, file_id))
     }
     fn syntax(&self, file_id: FileId) -> File {
-        self.db.make_query(|ctx| ::queries::file_syntax(ctx, file_id))
+        self.db.make_query(|ctx| crate::queries::file_syntax(ctx, file_id))
     }
     fn symbols<'a>(&'a self, acc: &mut Vec<Arc<SymbolIndex>>) {
         self.db.make_query(|ctx| {
-            let file_set = ::queries::file_set(ctx);
+            let file_set = crate::queries::file_set(ctx);
             let syms = file_set.0.iter()
-                .map(|file_id| ::queries::file_symbols(ctx, *file_id));
+                .map(|file_id| crate::queries::file_symbols(ctx, *file_id));
             acc.extend(syms);
         });
     }
index ffbb6a29fda82de06355cd43dda51e02ded78295..e5d83d365ce582b89221b4800ffc6bc3d2ae4524 100644 (file)
@@ -9,7 +9,7 @@
 };
 use fst::{self, Streamer};
 use rayon::prelude::*;
-use {Query, FileId, JobToken};
+use crate::{Query, FileId, JobToken};
 
 #[derive(Debug)]
 pub(crate) struct SymbolIndex {
index 1fe6b2ebe60349876ee2800aa39d215300d387f8..2b32571171a13aba026bb76b7a3f12d3ebec980e 100644 (file)
@@ -1,4 +1,5 @@
 [package]
+edition = "2018"
 name = "ra_lsp_server"
 version = "0.1.0"
 authors = ["Aleksey Kladov <aleksey.kladov@gmail.com>"]
index 08a6565693f9b7af2a7206dd82da2c017a1d4fb2..a75b160c53956171e619344eb46413ca0a1b28b1 100644 (file)
@@ -7,7 +7,7 @@
 use ra_syntax::{SyntaxKind, TextUnit, TextRange};
 use ra_analysis::{FileId, SourceChange, SourceFileEdit, FileSystemEdit};
 
-use {
+use crate::{
     Result,
     server_world::ServerWorld,
     req,
@@ -299,7 +299,7 @@ pub fn to_location(
         Ok(loc)
 }
 
-pub trait MapConvWith<'a>: Sized {
+pub trait MapConvWith<'a>: Sized + 'a {
     type Ctx;
     type Output;
 
@@ -309,7 +309,7 @@ fn map_conv_with(self, ctx: &'a Self::Ctx) -> ConvWithIter<'a, Self, Self::Ctx>
 }
 
 impl<'a, I> MapConvWith<'a> for I
-    where I: Iterator,
+    where I: Iterator + 'a,
           I::Item: ConvWith
 {
     type Ctx = <I::Item as ConvWith>::Ctx;
index 60652d55eee4f57bc26d54434027564b755f1bdd..7224b147609574de4e4751cf53acd34513d15cbb 100644 (file)
@@ -34,5 +34,7 @@
 pub mod thread_watcher;
 
 pub type Result<T> = ::std::result::Result<T, ::failure::Error>;
-pub use caps::server_capabilities;
-pub use main_loop::main_loop;
+pub use crate::{
+    main_loop::main_loop,
+    caps::server_capabilities,
+};
index f65e2a88909417c6d60deaf2095c17d6be4431b1..1fe78f3d0fd67f2c8852a117c1647d2159cc7a68 100644 (file)
@@ -13,7 +13,7 @@
     text_utils::contains_offset_nonstrict
 };
 
-use ::{
+use crate::{
     req::{self, Decoration}, Result,
     conv::{Conv, ConvWith, TryConvWith, MapConvWith, to_location},
     server_world::ServerWorld,
index f4e7cfc330c2eda984de27e4a2f8946a50c3a2c4..773501efe7249901fb2582e20f235ff900ac5bfd 100644 (file)
@@ -16,7 +16,7 @@
 };
 use rustc_hash::FxHashMap;
 
-use {
+use crate::{
     req,
     Result,
     vfs::{self, FileEvent},
index 43e4fd6542b3748afba0cab76ee530143a3a9827..c144d95960c644aaff7c4256e7960cc02277af6a 100644 (file)
@@ -5,7 +5,7 @@
 use cargo_metadata::{metadata_run, CargoOpt};
 use ra_syntax::SmolStr;
 
-use {
+use crate::{
     Result,
     thread_watcher::{Worker, ThreadWatcher},
 };
index c4cdf83d47223b281cd77461eb95e5a3950c342b..c931afa021a5f359a2f4514360cef8911d9df27f 100644 (file)
@@ -8,7 +8,7 @@
 use languageserver_types::Url;
 use ra_analysis::{FileId, AnalysisHost, Analysis, CrateGraph, CrateId, LibraryData, FileResolver};
 
-use {
+use crate::{
     Result,
     path_map::{PathMap, Root},
     vfs::{FileEvent, FileEventKind},
index 86a3a91e071c8c2292eb901f29f8dbd91d9f865e..3257effcba33f3cfb2c2fbf13656376b58d59204 100644 (file)
@@ -1,7 +1,7 @@
 use std::thread;
 use crossbeam_channel::{bounded, unbounded, Sender, Receiver};
 use drop_bomb::DropBomb;
-use Result;
+use crate::Result;
 
 pub struct Worker<I, O> {
     pub inp: Sender<I>,
index a1c1783f206b7851457e7680f9781ec5702fae97..d8f9b1aac9aded2be3ed86c4037b2ef070ad7d9b 100644 (file)
@@ -5,7 +5,7 @@
 
 use walkdir::WalkDir;
 
-use {
+use crate::{
     thread_watcher::{Worker, ThreadWatcher},
 };
 
index dced45f55b55e87f874159f22304859218933b75..7265b5999e96fef9d5c5ccfd338b3bde428abc3d 100644 (file)
@@ -12,7 +12,7 @@
 
 use ra_lsp_server::req::{Runnables, RunnablesParams};
 
-use support::project;
+use crate::support::project;
 
 
 const LOG: &'static str = "";
index 8fe2aa81642ecbd7f930f68616ff830e3d384be7..d1339f62fccbb4bc86c1c900d26411e4238d918e 100644 (file)
@@ -25,7 +25,7 @@
 
 pub fn project(fixture: &str) -> Server {
     static INIT: Once = Once::new();
-    INIT.call_once(|| Logger::with_env_or_str(::LOG).start().unwrap());
+    INIT.call_once(|| Logger::with_env_or_str(crate::LOG).start().unwrap());
 
     let tmp_dir = TempDir::new("test-project")
         .unwrap();