Method: pylint.checkers.similar.Similar._compute_sims
Calls: 1038, Exceptions: 0, Paths: 5Back
Path 1: 1021 calls (0.98)
[] (1021)
1def _compute_sims(self) -> list[tuple[int, set[LinesChunkLimits_T]]]:
2 """Compute similarities in appended files."""
3 no_duplicates: dict[int, list[set[LinesChunkLimits_T]]] = defaultdict(list)
4
5 for commonality in self._iter_sims():
6 num = commonality.cmn_lines_nb
7 lineset1 = commonality.fst_lset
8 start_line_1 = commonality.fst_file_start
9 end_line_1 = commonality.fst_file_end
10 lineset2 = commonality.snd_lset
11 start_line_2 = commonality.snd_file_start
12 end_line_2 = commonality.snd_file_end
13
14 duplicate = no_duplicates[num]
15 couples: set[LinesChunkLimits_T]
16 for couples in duplicate:
17 if (lineset1, start_line_1, end_line_1) in couples or (
18 lineset2,
19 start_line_2,
20 end_line_2,
21 ) in couples:
22 break
23 else:
24 duplicate.append(
25 {
26 (lineset1, start_line_1, end_line_1),
27 (lineset2, start_line_2, end_line_2),
28 }
29 )
30 sims: list[tuple[int, set[LinesChunkLimits_T]]] = []
31 ensembles: list[set[LinesChunkLimits_T]]
32 for num, ensembles in no_duplicates.items():
33 cpls: set[LinesChunkLimits_T]
34 for cpls in ensembles:
35 sims.append((num, cpls))
36 sims.sort()
37 sims.reverse()
38 return sims
Path 2: 14 calls (0.01)
list (14)
1def _compute_sims(self) -> list[tuple[int, set[LinesChunkLimits_T]]]:
2 """Compute similarities in appended files."""
3 no_duplicates: dict[int, list[set[LinesChunkLimits_T]]] = defaultdict(list)
4
5 for commonality in self._iter_sims():
6 num = commonality.cmn_lines_nb
7 lineset1 = commonality.fst_lset
8 start_line_1 = commonality.fst_file_start
9 end_line_1 = commonality.fst_file_end
10 lineset2 = commonality.snd_lset
11 start_line_2 = commonality.snd_file_start
12 end_line_2 = commonality.snd_file_end
13
14 duplicate = no_duplicates[num]
15 couples: set[LinesChunkLimits_T]
16 for couples in duplicate:
17 if (lineset1, start_line_1, end_line_1) in couples or (
18 lineset2,
19 start_line_2,
20 end_line_2,
21 ) in couples:
22 break
23 else:
24 duplicate.append(
25 {
26 (lineset1, start_line_1, end_line_1),
27 (lineset2, start_line_2, end_line_2),
28 }
29 )
30 sims: list[tuple[int, set[LinesChunkLimits_T]]] = []
31 ensembles: list[set[LinesChunkLimits_T]]
32 for num, ensembles in no_duplicates.items():
33 cpls: set[LinesChunkLimits_T]
34 for cpls in ensembles:
35 sims.append((num, cpls))
36 sims.sort()
37 sims.reverse()
38 return sims
Path 3: 1 calls (0.0)
list (1)
1def _compute_sims(self) -> list[tuple[int, set[LinesChunkLimits_T]]]:
2 """Compute similarities in appended files."""
3 no_duplicates: dict[int, list[set[LinesChunkLimits_T]]] = defaultdict(list)
4
5 for commonality in self._iter_sims():
6 num = commonality.cmn_lines_nb
7 lineset1 = commonality.fst_lset
8 start_line_1 = commonality.fst_file_start
9 end_line_1 = commonality.fst_file_end
10 lineset2 = commonality.snd_lset
11 start_line_2 = commonality.snd_file_start
12 end_line_2 = commonality.snd_file_end
13
14 duplicate = no_duplicates[num]
15 couples: set[LinesChunkLimits_T]
16 for couples in duplicate:
17 if (lineset1, start_line_1, end_line_1) in couples or (
18 lineset2,
19 start_line_2,
20 end_line_2,
21 ) in couples:
22 break
23 else:
24 duplicate.append(
25 {
26 (lineset1, start_line_1, end_line_1),
27 (lineset2, start_line_2, end_line_2),
28 }
29 )
30 sims: list[tuple[int, set[LinesChunkLimits_T]]] = []
31 ensembles: list[set[LinesChunkLimits_T]]
32 for num, ensembles in no_duplicates.items():
33 cpls: set[LinesChunkLimits_T]
34 for cpls in ensembles:
35 sims.append((num, cpls))
36 sims.sort()
37 sims.reverse()
38 return sims
Path 4: 1 calls (0.0)
list (1)
1def _compute_sims(self) -> list[tuple[int, set[LinesChunkLimits_T]]]:
2 """Compute similarities in appended files."""
3 no_duplicates: dict[int, list[set[LinesChunkLimits_T]]] = defaultdict(list)
4
5 for commonality in self._iter_sims():
6 num = commonality.cmn_lines_nb
7 lineset1 = commonality.fst_lset
8 start_line_1 = commonality.fst_file_start
9 end_line_1 = commonality.fst_file_end
10 lineset2 = commonality.snd_lset
11 start_line_2 = commonality.snd_file_start
12 end_line_2 = commonality.snd_file_end
13
14 duplicate = no_duplicates[num]
15 couples: set[LinesChunkLimits_T]
16 for couples in duplicate:
17 if (lineset1, start_line_1, end_line_1) in couples or (
18 lineset2,
19 start_line_2,
20 end_line_2,
21 ) in couples:
22 break
23 else:
24 duplicate.append(
25 {
26 (lineset1, start_line_1, end_line_1),
27 (lineset2, start_line_2, end_line_2),
28 }
29 )
30 sims: list[tuple[int, set[LinesChunkLimits_T]]] = []
31 ensembles: list[set[LinesChunkLimits_T]]
32 for num, ensembles in no_duplicates.items():
33 cpls: set[LinesChunkLimits_T]
34 for cpls in ensembles:
35 sims.append((num, cpls))
36 sims.sort()
37 sims.reverse()
38 return sims
Path 5: 1 calls (0.0)
list (1)
1def _compute_sims(self) -> list[tuple[int, set[LinesChunkLimits_T]]]:
2 """Compute similarities in appended files."""
3 no_duplicates: dict[int, list[set[LinesChunkLimits_T]]] = defaultdict(list)
4
5 for commonality in self._iter_sims():
6 num = commonality.cmn_lines_nb
7 lineset1 = commonality.fst_lset
8 start_line_1 = commonality.fst_file_start
9 end_line_1 = commonality.fst_file_end
10 lineset2 = commonality.snd_lset
11 start_line_2 = commonality.snd_file_start
12 end_line_2 = commonality.snd_file_end
13
14 duplicate = no_duplicates[num]
15 couples: set[LinesChunkLimits_T]
16 for couples in duplicate:
17 if (lineset1, start_line_1, end_line_1) in couples or (
18 lineset2,
19 start_line_2,
20 end_line_2,
21 ) in couples:
22 break
23 else:
24 duplicate.append(
25 {
26 (lineset1, start_line_1, end_line_1),
27 (lineset2, start_line_2, end_line_2),
28 }
29 )
30 sims: list[tuple[int, set[LinesChunkLimits_T]]] = []
31 ensembles: list[set[LinesChunkLimits_T]]
32 for num, ensembles in no_duplicates.items():
33 cpls: set[LinesChunkLimits_T]
34 for cpls in ensembles:
35 sims.append((num, cpls))
36 sims.sort()
37 sims.reverse()
38 return sims