@@ -14,7 +14,7 @@ mod test_db;
14
14
pub mod ast_transform;
15
15
16
16
use either:: Either ;
17
- use hir:: { db :: HirDatabase , ModuleDef } ;
17
+ use hir:: ModuleDef ;
18
18
use ra_db:: FileRange ;
19
19
use ra_ide_db:: { imports_locator:: ImportsLocatorIde , RootDatabase } ;
20
20
use ra_syntax:: { TextRange , TextUnit } ;
@@ -62,10 +62,7 @@ impl ResolvedAssist {
62
62
///
63
63
/// Assists are returned in the "unresolved" state, that is only labels are
64
64
/// returned, without actual edits.
65
- pub fn applicable_assists < H > ( db : & H , range : FileRange ) -> Vec < AssistLabel >
66
- where
67
- H : HirDatabase + ' static ,
68
- {
65
+ pub fn applicable_assists ( db : & RootDatabase , range : FileRange ) -> Vec < AssistLabel > {
69
66
AssistCtx :: with_ctx ( db, range, false , |ctx| {
70
67
assists:: all ( )
71
68
. iter ( )
@@ -126,10 +123,7 @@ pub fn assists_with_imports_locator(db: &RootDatabase, range: FileRange) -> Vec<
126
123
///
127
124
/// Assists are returned in the "resolved" state, that is with edit fully
128
125
/// computed.
129
- pub fn assists < H > ( db : & H , range : FileRange ) -> Vec < ResolvedAssist >
130
- where
131
- H : HirDatabase + ' static ,
132
- {
126
+ pub fn assists ( db : & RootDatabase , range : FileRange ) -> Vec < ResolvedAssist > {
133
127
AssistCtx :: with_ctx ( db, range, true , |ctx| {
134
128
let mut a = assists:: all ( )
135
129
. iter ( )
@@ -231,17 +225,18 @@ mod helpers {
231
225
use ra_syntax:: TextRange ;
232
226
use test_utils:: { add_cursor, assert_eq_text, extract_offset, extract_range} ;
233
227
234
- use crate :: { test_db:: TestDB , Assist , AssistCtx , ImportsLocator } ;
228
+ use crate :: { Assist , AssistCtx , ImportsLocator } ;
229
+ use ra_ide_db:: RootDatabase ;
235
230
use std:: sync:: Arc ;
236
231
237
232
// FIXME remove the `ModuleDefId` reexport from `ra_hir` when this gets removed.
238
233
pub ( crate ) struct TestImportsLocator {
239
- db : Arc < TestDB > ,
234
+ db : Arc < RootDatabase > ,
240
235
test_file_id : FileId ,
241
236
}
242
237
243
238
impl TestImportsLocator {
244
- pub ( crate ) fn new ( db : Arc < TestDB > , test_file_id : FileId ) -> Self {
239
+ pub ( crate ) fn new ( db : Arc < RootDatabase > , test_file_id : FileId ) -> Self {
245
240
TestImportsLocator { db, test_file_id }
246
241
}
247
242
}
@@ -282,12 +277,12 @@ mod helpers {
282
277
}
283
278
284
279
pub ( crate ) fn check_assist (
285
- assist : fn ( AssistCtx < TestDB > ) -> Option < Assist > ,
280
+ assist : fn ( AssistCtx < RootDatabase > ) -> Option < Assist > ,
286
281
before : & str ,
287
282
after : & str ,
288
283
) {
289
284
let ( before_cursor_pos, before) = extract_offset ( before) ;
290
- let ( db, file_id) = TestDB :: with_single_file ( & before) ;
285
+ let ( db, file_id) = RootDatabase :: with_single_file ( & before) ;
291
286
let frange =
292
287
FileRange { file_id, range : TextRange :: offset_len ( before_cursor_pos, 0 . into ( ) ) } ;
293
288
let assist =
@@ -310,13 +305,13 @@ mod helpers {
310
305
}
311
306
312
307
pub ( crate ) fn check_assist_with_imports_locator < F : ImportsLocator > (
313
- assist : fn ( AssistCtx < TestDB > , & mut F ) -> Option < Assist > ,
314
- imports_locator_provider : fn ( db : Arc < TestDB > , file_id : FileId ) -> F ,
308
+ assist : fn ( AssistCtx < RootDatabase > , & mut F ) -> Option < Assist > ,
309
+ imports_locator_provider : fn ( db : Arc < RootDatabase > , file_id : FileId ) -> F ,
315
310
before : & str ,
316
311
after : & str ,
317
312
) {
318
313
let ( before_cursor_pos, before) = extract_offset ( before) ;
319
- let ( db, file_id) = TestDB :: with_single_file ( & before) ;
314
+ let ( db, file_id) = RootDatabase :: with_single_file ( & before) ;
320
315
let db = Arc :: new ( db) ;
321
316
let mut imports_locator = imports_locator_provider ( Arc :: clone ( & db) , file_id) ;
322
317
let frange =
@@ -342,12 +337,12 @@ mod helpers {
342
337
}
343
338
344
339
pub ( crate ) fn check_assist_range (
345
- assist : fn ( AssistCtx < TestDB > ) -> Option < Assist > ,
340
+ assist : fn ( AssistCtx < RootDatabase > ) -> Option < Assist > ,
346
341
before : & str ,
347
342
after : & str ,
348
343
) {
349
344
let ( range, before) = extract_range ( before) ;
350
- let ( db, file_id) = TestDB :: with_single_file ( & before) ;
345
+ let ( db, file_id) = RootDatabase :: with_single_file ( & before) ;
351
346
let frange = FileRange { file_id, range } ;
352
347
let assist =
353
348
AssistCtx :: with_ctx ( & db, frange, true , assist) . expect ( "code action is not applicable" ) ;
@@ -364,12 +359,12 @@ mod helpers {
364
359
}
365
360
366
361
pub ( crate ) fn check_assist_target (
367
- assist : fn ( AssistCtx < TestDB > ) -> Option < Assist > ,
362
+ assist : fn ( AssistCtx < RootDatabase > ) -> Option < Assist > ,
368
363
before : & str ,
369
364
target : & str ,
370
365
) {
371
366
let ( before_cursor_pos, before) = extract_offset ( before) ;
372
- let ( db, file_id) = TestDB :: with_single_file ( & before) ;
367
+ let ( db, file_id) = RootDatabase :: with_single_file ( & before) ;
373
368
let frange =
374
369
FileRange { file_id, range : TextRange :: offset_len ( before_cursor_pos, 0 . into ( ) ) } ;
375
370
let assist =
@@ -384,12 +379,12 @@ mod helpers {
384
379
}
385
380
386
381
pub ( crate ) fn check_assist_range_target (
387
- assist : fn ( AssistCtx < TestDB > ) -> Option < Assist > ,
382
+ assist : fn ( AssistCtx < RootDatabase > ) -> Option < Assist > ,
388
383
before : & str ,
389
384
target : & str ,
390
385
) {
391
386
let ( range, before) = extract_range ( before) ;
392
- let ( db, file_id) = TestDB :: with_single_file ( & before) ;
387
+ let ( db, file_id) = RootDatabase :: with_single_file ( & before) ;
393
388
let frange = FileRange { file_id, range } ;
394
389
let assist =
395
390
AssistCtx :: with_ctx ( & db, frange, true , assist) . expect ( "code action is not applicable" ) ;
@@ -403,24 +398,24 @@ mod helpers {
403
398
}
404
399
405
400
pub ( crate ) fn check_assist_not_applicable (
406
- assist : fn ( AssistCtx < TestDB > ) -> Option < Assist > ,
401
+ assist : fn ( AssistCtx < RootDatabase > ) -> Option < Assist > ,
407
402
before : & str ,
408
403
) {
409
404
let ( before_cursor_pos, before) = extract_offset ( before) ;
410
- let ( db, file_id) = TestDB :: with_single_file ( & before) ;
405
+ let ( db, file_id) = RootDatabase :: with_single_file ( & before) ;
411
406
let frange =
412
407
FileRange { file_id, range : TextRange :: offset_len ( before_cursor_pos, 0 . into ( ) ) } ;
413
408
let assist = AssistCtx :: with_ctx ( & db, frange, true , assist) ;
414
409
assert ! ( assist. is_none( ) ) ;
415
410
}
416
411
417
412
pub ( crate ) fn check_assist_with_imports_locator_not_applicable < F : ImportsLocator > (
418
- assist : fn ( AssistCtx < TestDB > , & mut F ) -> Option < Assist > ,
419
- imports_locator_provider : fn ( db : Arc < TestDB > , file_id : FileId ) -> F ,
413
+ assist : fn ( AssistCtx < RootDatabase > , & mut F ) -> Option < Assist > ,
414
+ imports_locator_provider : fn ( db : Arc < RootDatabase > , file_id : FileId ) -> F ,
420
415
before : & str ,
421
416
) {
422
417
let ( before_cursor_pos, before) = extract_offset ( before) ;
423
- let ( db, file_id) = TestDB :: with_single_file ( & before) ;
418
+ let ( db, file_id) = RootDatabase :: with_single_file ( & before) ;
424
419
let db = Arc :: new ( db) ;
425
420
let mut imports_locator = imports_locator_provider ( Arc :: clone ( & db) , file_id) ;
426
421
let frange =
@@ -431,11 +426,11 @@ mod helpers {
431
426
}
432
427
433
428
pub ( crate ) fn check_assist_range_not_applicable (
434
- assist : fn ( AssistCtx < TestDB > ) -> Option < Assist > ,
429
+ assist : fn ( AssistCtx < RootDatabase > ) -> Option < Assist > ,
435
430
before : & str ,
436
431
) {
437
432
let ( range, before) = extract_range ( before) ;
438
- let ( db, file_id) = TestDB :: with_single_file ( & before) ;
433
+ let ( db, file_id) = RootDatabase :: with_single_file ( & before) ;
439
434
let frange = FileRange { file_id, range } ;
440
435
let assist = AssistCtx :: with_ctx ( & db, frange, true , assist) ;
441
436
assert ! ( assist. is_none( ) ) ;
@@ -448,13 +443,13 @@ mod tests {
448
443
use ra_syntax:: TextRange ;
449
444
use test_utils:: { extract_offset, extract_range} ;
450
445
451
- use crate :: test_db :: TestDB ;
446
+ use ra_ide_db :: RootDatabase ;
452
447
453
448
#[ test]
454
449
fn assist_order_field_struct ( ) {
455
450
let before = "struct Foo { <|>bar: u32 }" ;
456
451
let ( before_cursor_pos, before) = extract_offset ( before) ;
457
- let ( db, file_id) = TestDB :: with_single_file ( & before) ;
452
+ let ( db, file_id) = RootDatabase :: with_single_file ( & before) ;
458
453
let frange =
459
454
FileRange { file_id, range : TextRange :: offset_len ( before_cursor_pos, 0 . into ( ) ) } ;
460
455
let assists = super :: assists ( & db, frange) ;
@@ -478,7 +473,7 @@ mod tests {
478
473
}
479
474
}" ;
480
475
let ( range, before) = extract_range ( before) ;
481
- let ( db, file_id) = TestDB :: with_single_file ( & before) ;
476
+ let ( db, file_id) = RootDatabase :: with_single_file ( & before) ;
482
477
let frange = FileRange { file_id, range } ;
483
478
let assists = super :: assists ( & db, frange) ;
484
479
let mut assists = assists. iter ( ) ;
0 commit comments