aboutsummaryrefslogtreecommitdiff
path: root/crates/ra_analysis/src/lib.rs
diff options
context:
space:
mode:
Diffstat (limited to 'crates/ra_analysis/src/lib.rs')
-rw-r--r--crates/ra_analysis/src/lib.rs21
1 files changed, 17 insertions, 4 deletions
diff --git a/crates/ra_analysis/src/lib.rs b/crates/ra_analysis/src/lib.rs
index 849fd93e4..d8b355a81 100644
--- a/crates/ra_analysis/src/lib.rs
+++ b/crates/ra_analysis/src/lib.rs
@@ -19,7 +19,6 @@ mod imp;
19mod job; 19mod job;
20mod roots; 20mod roots;
21mod db; 21mod db;
22mod queries;
23mod descriptors; 22mod descriptors;
24 23
25use std::{ 24use std::{
@@ -29,15 +28,18 @@ use std::{
29 28
30use relative_path::{RelativePath, RelativePathBuf}; 29use relative_path::{RelativePath, RelativePathBuf};
31use ra_syntax::{File, TextRange, TextUnit, AtomEdit}; 30use ra_syntax::{File, TextRange, TextUnit, AtomEdit};
32use imp::{AnalysisImpl, AnalysisHostImpl, FileResolverImp};
33use rustc_hash::FxHashMap; 31use rustc_hash::FxHashMap;
32use crate::imp::{AnalysisImpl, AnalysisHostImpl, FileResolverImp};
34 33
35pub use ra_editor::{ 34pub use ra_editor::{
36 StructureNode, LineIndex, FileSymbol, 35 StructureNode, LineIndex, FileSymbol,
37 Runnable, RunnableKind, HighlightedRange, CompletionItem, 36 Runnable, RunnableKind, HighlightedRange, CompletionItem,
38 Fold, FoldKind 37 Fold, FoldKind
39}; 38};
40pub use job::{JobToken, JobHandle}; 39pub use crate::{
40 job::{JobToken, JobHandle},
41 descriptors::FnDescriptor,
42};
41 43
42#[derive(Debug, Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash)] 44#[derive(Debug, Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash)]
43pub struct FileId(pub u32); 45pub struct FileId(pub u32);
@@ -159,7 +161,7 @@ impl Query {
159 } 161 }
160} 162}
161 163
162#[derive(Clone, Debug)] 164#[derive(Debug)]
163pub struct Analysis { 165pub struct Analysis {
164 imp: AnalysisImpl 166 imp: AnalysisImpl
165} 167}
@@ -236,6 +238,11 @@ impl Analysis {
236 let file = self.imp.file_syntax(file_id); 238 let file = self.imp.file_syntax(file_id);
237 ra_editor::folding_ranges(&file) 239 ra_editor::folding_ranges(&file)
238 } 240 }
241
242 pub fn resolve_callable(&self, file_id: FileId, offset: TextUnit, token: &JobToken)
243 -> Option<(FnDescriptor, Option<usize>)> {
244 self.imp.resolve_callable(file_id, offset, token)
245 }
239} 246}
240 247
241#[derive(Debug)] 248#[derive(Debug)]
@@ -250,3 +257,9 @@ impl LibraryData {
250 LibraryData { root } 257 LibraryData { root }
251 } 258 }
252} 259}
260
261#[test]
262fn analysis_is_send() {
263 fn is_send<T: Send>() {}
264 is_send::<Analysis>();
265}