diff options
author | Aleksey Kladov <[email protected]> | 2018-11-27 22:38:39 +0000 |
---|---|---|
committer | Aleksey Kladov <[email protected]> | 2018-11-27 22:38:39 +0000 |
commit | 4c9933c01657349438f9170c2ef7d6352144b224 (patch) | |
tree | 47b9b3ecde0c9bbfcc8a9ba4fd063a743eaf9c64 /crates/ra_analysis/src/db.rs | |
parent | 806ea03b64455a0c10fd8a8d6d98ed4e7ac15058 (diff) |
check_canceled is a method
Diffstat (limited to 'crates/ra_analysis/src/db.rs')
-rw-r--r-- | crates/ra_analysis/src/db.rs | 17 |
1 files changed, 6 insertions, 11 deletions
diff --git a/crates/ra_analysis/src/db.rs b/crates/ra_analysis/src/db.rs index 78bbfcf2d..d7fffc188 100644 --- a/crates/ra_analysis/src/db.rs +++ b/crates/ra_analysis/src/db.rs | |||
@@ -6,7 +6,6 @@ use ra_syntax::{SourceFileNode, SyntaxNode}; | |||
6 | use salsa::{self, Database}; | 6 | use salsa::{self, Database}; |
7 | 7 | ||
8 | use crate::{ | 8 | use crate::{ |
9 | db, | ||
10 | hir, | 9 | hir, |
11 | symbol_index::SymbolIndex, | 10 | symbol_index::SymbolIndex, |
12 | syntax_ptr::SyntaxPtr, | 11 | syntax_ptr::SyntaxPtr, |
@@ -59,14 +58,6 @@ impl Default for RootDatabase { | |||
59 | } | 58 | } |
60 | } | 59 | } |
61 | 60 | ||
62 | pub(crate) fn check_canceled(db: &impl salsa::Database) -> Cancelable<()> { | ||
63 | if db.salsa_runtime().is_current_revision_canceled() { | ||
64 | Err(Canceled) | ||
65 | } else { | ||
66 | Ok(()) | ||
67 | } | ||
68 | } | ||
69 | |||
70 | impl salsa::ParallelDatabase for RootDatabase { | 61 | impl salsa::ParallelDatabase for RootDatabase { |
71 | fn snapshot(&self) -> salsa::Snapshot<RootDatabase> { | 62 | fn snapshot(&self) -> salsa::Snapshot<RootDatabase> { |
72 | salsa::Snapshot::new(RootDatabase { | 63 | salsa::Snapshot::new(RootDatabase { |
@@ -80,7 +71,11 @@ impl salsa::ParallelDatabase for RootDatabase { | |||
80 | pub(crate) trait BaseDatabase: salsa::Database { | 71 | pub(crate) trait BaseDatabase: salsa::Database { |
81 | fn id_maps(&self) -> &IdMaps; | 72 | fn id_maps(&self) -> &IdMaps; |
82 | fn check_canceled(&self) -> Cancelable<()> { | 73 | fn check_canceled(&self) -> Cancelable<()> { |
83 | check_canceled(self) | 74 | if self.salsa_runtime().is_current_revision_canceled() { |
75 | Err(Canceled) | ||
76 | } else { | ||
77 | Ok(()) | ||
78 | } | ||
84 | } | 79 | } |
85 | } | 80 | } |
86 | 81 | ||
@@ -171,7 +166,7 @@ fn file_lines(db: &impl SyntaxDatabase, file_id: FileId) -> Arc<LineIndex> { | |||
171 | Arc::new(LineIndex::new(&*text)) | 166 | Arc::new(LineIndex::new(&*text)) |
172 | } | 167 | } |
173 | fn file_symbols(db: &impl SyntaxDatabase, file_id: FileId) -> Cancelable<Arc<SymbolIndex>> { | 168 | fn file_symbols(db: &impl SyntaxDatabase, file_id: FileId) -> Cancelable<Arc<SymbolIndex>> { |
174 | db::check_canceled(db)?; | 169 | db.check_canceled()?; |
175 | let syntax = db.file_syntax(file_id); | 170 | let syntax = db.file_syntax(file_id); |
176 | Ok(Arc::new(SymbolIndex::for_file(file_id, syntax))) | 171 | Ok(Arc::new(SymbolIndex::for_file(file_id, syntax))) |
177 | } | 172 | } |