Skip to content

Commit 06cee26

Browse files
bors[bot]matklad
andauthored
Merge #9563
9563: internal: move some presentation-specific concerns out of IDE crate r=Veykril a=matklad Co-authored-by: Aleksey Kladov <[email protected]>
2 parents 325140a + 92059ea commit 06cee26

File tree

4 files changed

+94
-267
lines changed

4 files changed

+94
-267
lines changed

crates/ide/src/annotations.rs

Lines changed: 26 additions & 221 deletions
Original file line numberDiff line numberDiff line change
@@ -29,7 +29,7 @@ pub struct Annotation {
2929

3030
#[derive(Debug)]
3131
pub enum AnnotationKind {
32-
Runnable { debug: bool, runnable: Runnable },
32+
Runnable(Runnable),
3333
HasImpls { position: FilePosition, data: Option<Vec<NavigationTarget>> },
3434
HasReferences { position: FilePosition, data: Option<Vec<FileRange>> },
3535
}
@@ -40,8 +40,6 @@ pub struct AnnotationConfig {
4040
pub annotate_impls: bool,
4141
pub annotate_references: bool,
4242
pub annotate_method_references: bool,
43-
pub run: bool,
44-
pub debug: bool,
4543
}
4644

4745
pub(crate) fn annotations(
@@ -59,20 +57,7 @@ pub(crate) fn annotations(
5957

6058
let range = runnable.nav.focus_or_full_range();
6159

62-
// dbg_runnable should go after the run annotation, to prevent a clone we do it this way
63-
let dbg_runnable = (runnable.debugee() && config.debug).then(|| Annotation {
64-
range,
65-
kind: AnnotationKind::Runnable { debug: true, runnable: runnable.clone() },
66-
});
67-
68-
if config.run {
69-
annotations.push(Annotation {
70-
range,
71-
kind: AnnotationKind::Runnable { debug: false, runnable },
72-
});
73-
}
74-
75-
annotations.extend(dbg_runnable);
60+
annotations.push(Annotation { range, kind: AnnotationKind::Runnable(runnable) });
7661
}
7762
}
7863

@@ -194,8 +179,6 @@ mod tests {
194179
annotate_impls: true,
195180
annotate_references: true,
196181
annotate_method_references: true,
197-
run: true,
198-
debug: true,
199182
},
200183
file_id,
201184
)
@@ -223,9 +206,8 @@ fn main() {
223206
[
224207
Annotation {
225208
range: 53..57,
226-
kind: Runnable {
227-
debug: false,
228-
runnable: Runnable {
209+
kind: Runnable(
210+
Runnable {
229211
use_name_in_title: false,
230212
nav: NavigationTarget {
231213
file_id: FileId(
@@ -239,27 +221,7 @@ fn main() {
239221
kind: Bin,
240222
cfg: None,
241223
},
242-
},
243-
},
244-
Annotation {
245-
range: 53..57,
246-
kind: Runnable {
247-
debug: true,
248-
runnable: Runnable {
249-
use_name_in_title: false,
250-
nav: NavigationTarget {
251-
file_id: FileId(
252-
0,
253-
),
254-
full_range: 50..85,
255-
focus_range: 53..57,
256-
name: "main",
257-
kind: Function,
258-
},
259-
kind: Bin,
260-
cfg: None,
261-
},
262-
},
224+
),
263225
},
264226
Annotation {
265227
range: 6..10,
@@ -329,9 +291,8 @@ fn main() {
329291
[
330292
Annotation {
331293
range: 17..21,
332-
kind: Runnable {
333-
debug: false,
334-
runnable: Runnable {
294+
kind: Runnable(
295+
Runnable {
335296
use_name_in_title: false,
336297
nav: NavigationTarget {
337298
file_id: FileId(
@@ -345,27 +306,7 @@ fn main() {
345306
kind: Bin,
346307
cfg: None,
347308
},
348-
},
349-
},
350-
Annotation {
351-
range: 17..21,
352-
kind: Runnable {
353-
debug: true,
354-
runnable: Runnable {
355-
use_name_in_title: false,
356-
nav: NavigationTarget {
357-
file_id: FileId(
358-
0,
359-
),
360-
full_range: 14..48,
361-
focus_range: 17..21,
362-
name: "main",
363-
kind: Function,
364-
},
365-
kind: Bin,
366-
cfg: None,
367-
},
368-
},
309+
),
369310
},
370311
Annotation {
371312
range: 7..11,
@@ -439,29 +380,8 @@ fn main() {
439380
[
440381
Annotation {
441382
range: 69..73,
442-
kind: Runnable {
443-
debug: false,
444-
runnable: Runnable {
445-
use_name_in_title: false,
446-
nav: NavigationTarget {
447-
file_id: FileId(
448-
0,
449-
),
450-
full_range: 66..100,
451-
focus_range: 69..73,
452-
name: "main",
453-
kind: Function,
454-
},
455-
kind: Bin,
456-
cfg: None,
457-
},
458-
},
459-
},
460-
Annotation {
461-
range: 69..73,
462-
kind: Runnable {
463-
debug: true,
464-
runnable: Runnable {
383+
kind: Runnable(
384+
Runnable {
465385
use_name_in_title: false,
466386
nav: NavigationTarget {
467387
file_id: FileId(
@@ -475,7 +395,7 @@ fn main() {
475395
kind: Bin,
476396
cfg: None,
477397
},
478-
},
398+
),
479399
},
480400
Annotation {
481401
range: 7..11,
@@ -602,29 +522,8 @@ fn main() {}
602522
[
603523
Annotation {
604524
range: 3..7,
605-
kind: Runnable {
606-
debug: false,
607-
runnable: Runnable {
608-
use_name_in_title: false,
609-
nav: NavigationTarget {
610-
file_id: FileId(
611-
0,
612-
),
613-
full_range: 0..12,
614-
focus_range: 3..7,
615-
name: "main",
616-
kind: Function,
617-
},
618-
kind: Bin,
619-
cfg: None,
620-
},
621-
},
622-
},
623-
Annotation {
624-
range: 3..7,
625-
kind: Runnable {
626-
debug: true,
627-
runnable: Runnable {
525+
kind: Runnable(
526+
Runnable {
628527
use_name_in_title: false,
629528
nav: NavigationTarget {
630529
file_id: FileId(
@@ -638,7 +537,7 @@ fn main() {}
638537
kind: Bin,
639538
cfg: None,
640539
},
641-
},
540+
),
642541
},
643542
Annotation {
644543
range: 3..7,
@@ -677,29 +576,8 @@ fn main() {
677576
[
678577
Annotation {
679578
range: 61..65,
680-
kind: Runnable {
681-
debug: false,
682-
runnable: Runnable {
683-
use_name_in_title: false,
684-
nav: NavigationTarget {
685-
file_id: FileId(
686-
0,
687-
),
688-
full_range: 58..95,
689-
focus_range: 61..65,
690-
name: "main",
691-
kind: Function,
692-
},
693-
kind: Bin,
694-
cfg: None,
695-
},
696-
},
697-
},
698-
Annotation {
699-
range: 61..65,
700-
kind: Runnable {
701-
debug: true,
702-
runnable: Runnable {
579+
kind: Runnable(
580+
Runnable {
703581
use_name_in_title: false,
704582
nav: NavigationTarget {
705583
file_id: FileId(
@@ -713,7 +591,7 @@ fn main() {
713591
kind: Bin,
714592
cfg: None,
715593
},
716-
},
594+
),
717595
},
718596
Annotation {
719597
range: 7..11,
@@ -821,9 +699,8 @@ mod tests {
821699
[
822700
Annotation {
823701
range: 3..7,
824-
kind: Runnable {
825-
debug: false,
826-
runnable: Runnable {
702+
kind: Runnable(
703+
Runnable {
827704
use_name_in_title: false,
828705
nav: NavigationTarget {
829706
file_id: FileId(
@@ -837,33 +714,12 @@ mod tests {
837714
kind: Bin,
838715
cfg: None,
839716
},
840-
},
841-
},
842-
Annotation {
843-
range: 3..7,
844-
kind: Runnable {
845-
debug: true,
846-
runnable: Runnable {
847-
use_name_in_title: false,
848-
nav: NavigationTarget {
849-
file_id: FileId(
850-
0,
851-
),
852-
full_range: 0..12,
853-
focus_range: 3..7,
854-
name: "main",
855-
kind: Function,
856-
},
857-
kind: Bin,
858-
cfg: None,
859-
},
860-
},
717+
),
861718
},
862719
Annotation {
863720
range: 18..23,
864-
kind: Runnable {
865-
debug: false,
866-
runnable: Runnable {
721+
kind: Runnable(
722+
Runnable {
867723
use_name_in_title: false,
868724
nav: NavigationTarget {
869725
file_id: FileId(
@@ -880,63 +736,12 @@ mod tests {
880736
},
881737
cfg: None,
882738
},
883-
},
884-
},
885-
Annotation {
886-
range: 18..23,
887-
kind: Runnable {
888-
debug: true,
889-
runnable: Runnable {
890-
use_name_in_title: false,
891-
nav: NavigationTarget {
892-
file_id: FileId(
893-
0,
894-
),
895-
full_range: 14..64,
896-
focus_range: 18..23,
897-
name: "tests",
898-
kind: Module,
899-
description: "mod tests",
900-
},
901-
kind: TestMod {
902-
path: "tests",
903-
},
904-
cfg: None,
905-
},
906-
},
907-
},
908-
Annotation {
909-
range: 45..57,
910-
kind: Runnable {
911-
debug: false,
912-
runnable: Runnable {
913-
use_name_in_title: false,
914-
nav: NavigationTarget {
915-
file_id: FileId(
916-
0,
917-
),
918-
full_range: 30..62,
919-
focus_range: 45..57,
920-
name: "my_cool_test",
921-
kind: Function,
922-
},
923-
kind: Test {
924-
test_id: Path(
925-
"tests::my_cool_test",
926-
),
927-
attr: TestAttr {
928-
ignore: false,
929-
},
930-
},
931-
cfg: None,
932-
},
933-
},
739+
),
934740
},
935741
Annotation {
936742
range: 45..57,
937-
kind: Runnable {
938-
debug: true,
939-
runnable: Runnable {
743+
kind: Runnable(
744+
Runnable {
940745
use_name_in_title: false,
941746
nav: NavigationTarget {
942747
file_id: FileId(
@@ -957,7 +762,7 @@ mod tests {
957762
},
958763
cfg: None,
959764
},
960-
},
765+
),
961766
},
962767
Annotation {
963768
range: 3..7,

crates/ide/src/runnables.rs

Lines changed: 0 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -74,16 +74,6 @@ impl Runnable {
7474
}
7575
}
7676

77-
pub fn debugee(&self) -> bool {
78-
matches!(
79-
&self.kind,
80-
RunnableKind::TestMod { .. }
81-
| RunnableKind::Test { .. }
82-
| RunnableKind::Bench { .. }
83-
| RunnableKind::Bin
84-
)
85-
}
86-
8777
pub fn title(&self) -> String {
8878
let mut s = String::from("▶\u{fe0e} Run ");
8979
if self.use_name_in_title {

0 commit comments

Comments
 (0)