facebookexperimental / libunifex
Duplication

Places in code with 6 or more lines that are exactly the same.

Intro
  • For duplication, we look at places in code where there are 6 or more lines of code that are exactly the same.
  • Before duplication is calculated, the code is cleaned to remove empty lines, comments, and frequently duplicated constructs such as imports.
  • You should aim at having as little as possible (<5%) of duplicated code as high-level of duplication can lead to maintenance difficulties, poor factoring, and logical contradictions.
Learn more...
Duplication Overall
  • 16% duplication:
    • 17,475 cleaned lines of cleaned code (without empty lines, comments, and frequently duplicated constructs such as imports)
    • 2,917 duplicated lines
  • 355 duplicates
system16% (2,917 lines)
Duplication per Extension
hpp17% (2,673 lines)
cpp12% (184 lines)
cmake11% (60 lines)
Duplication per Component (primary)
include/unifex12% (1,622 lines)
include/unifex/linux51% (674 lines)
include/unifex/win3234% (351 lines)
source/linux19% (126 lines)
cmake11% (60 lines)
source/win3212% (58 lines)
include/unifex/detail5% (26 lines)
include/unifex/win32/detail0% (0 lines)
source0% (0 lines)
doc/std0% (0 lines)

Duplication Between Components (50+ lines)

G include/unifex/linux include/unifex/linux include/unifex include/unifex include/unifex/linux--include/unifex 108 include/unifex/win32 include/unifex/win32 include/unifex--include/unifex/win32 55

Download: SVG DOT (open online Graphviz editor)

Open 3D force graph...

Show more details on duplication between components...
Longest Duplicates
The list of 50 longest duplicates.
See data for all 355 duplicates...
Size#FoldersFilesLinesCode
71 x 2 include/unifex/linux
include/unifex/linux
335:456 (11%)
756:879 (12%)
view
45 x 2 include/unifex/win32
include/unifex/win32
475:540 (9%)
650:715 (9%)
view
29 x 2 include/unifex/linux
include/unifex/linux
618:660 (4%)
831:873 (4%)
view
28 x 2 include/unifex/linux
include/unifex/linux
665:707 (4%)
878:920 (4%)
view
28 x 2 include/unifex/linux
include/unifex/linux
290:330 (4%)
711:751 (4%)
view
27 x 2 include/unifex/linux
include/unifex/linux
454:493 (4%)
568:607 (4%)
view
25 x 2 include/unifex/win32
include/unifex/win32
542:572 (5%)
717:747 (5%)
view
25 x 2 include/unifex/win32
include/unifex/win32
423:452 (5%)
596:625 (5%)
view
22 x 2 include/unifex/win32
include/unifex/win32
270:328 (4%)
562:593 (4%)
view
22 x 2 include/unifex
include/unifex
122:149 (8%)
130:157 (8%)
view
22 x 2 include/unifex
include/unifex
89:116 (14%)
91:118 (16%)
view
20 x 2 include/unifex/linux
include/unifex/linux
107:131 (3%)
109:133 (3%)
view
20 x 2 include/unifex
include/unifex
184:209 (8%)
196:221 (7%)
view
17 x 2 source/linux
source/linux
372:404 (6%)
696:729 (4%)
view
17 x 2 include/unifex
include/unifex
128:151 (6%)
188:211 (6%)
view
17 x 2 include/unifex
include/unifex
89:113 (6%)
141:165 (6%)
view
16 x 2 include/unifex
include/unifex
188:209 (6%)
136:157 (5%)
view
16 x 2 include/unifex
include/unifex
128:149 (6%)
200:221 (5%)
view
16 x 2 include/unifex
include/unifex
136:157 (5%)
200:221 (5%)
view
15 x 2 include/unifex/win32
include/unifex/win32
657:678 (3%)
735:756 (3%)
view
15 x 2 source/win32
source/win32
490:515 (3%)
555:580 (3%)
view
15 x 2 include/unifex
include/unifex
253:274 (5%)
96:117 (11%)
view
15 x 2 include/unifex/linux
include/unifex/linux
576:594 (2%)
789:807 (2%)
view
14 x 2 include/unifex
include/unifex
71:88 (5%)
155:172 (5%)
view
14 x 2 source/win32
source/win32
525:550 (3%)
590:614 (3%)
view
13 x 2 include/unifex
include/unifex
329:341 (4%)
286:298 (5%)
view
13 x 2 include/unifex
include/unifex
171:187 (5%)
104:120 (6%)
view
13 x 2 include/unifex/linux
include/unifex/linux
533:552 (2%)
744:764 (2%)
view
13 x 2 include/unifex/linux
include/unifex/linux
415:435 (2%)
529:549 (2%)
view
13 x 2 include/unifex
include/unifex
34:48 (8%)
35:49 (7%)
view
13 x 2 source/linux
source/linux
45:63 (5%)
45:274 (3%)
view
12 x 2 include/unifex
include/unifex
25:44 (7%)
25:44 (8%)
view
12 x 2 include/unifex
include/unifex
181:194 (7%)
162:175 (8%)
view
12 x 2 include/unifex
include/unifex
81:96 (4%)
63:78 (6%)
view
12 x 2 include/unifex/linux
include/unifex/linux
210:225 (1%)
329:344 (2%)
view
12 x 2 include/unifex/win32
include/unifex/win32
575:589 (2%)
750:764 (2%)
view
12 x 2 include/unifex
include/unifex
120:135 (4%)
203:218 (4%)
view
12 x 2 include/unifex
include/unifex
164:179 (7%)
145:160 (8%)
view
11 x 2 include/unifex
include/unifex
94:106 (3%)
194:206 (3%)
view
11 x 2 include/unifex
include/unifex
155:167 (2%)
331:343 (2%)
view
11 x 2 include/unifex
include/unifex
261:273 (2%)
331:343 (2%)
view
11 x 2 include/unifex
include/unifex
155:167 (2%)
261:273 (2%)
view
11 x 2 cmake
cmake
129:141 (5%)
130:142 (6%)
view
11 x 2 include/unifex/linux
include/unifex/linux
473:490 (1%)
896:913 (1%)
view
11 x 2 include/unifex
include/unifex
41:53 (39%)
48:60 (32%)
view
10 x 2 include/unifex
include/unifex
72:85 (5%)
56:69 (9%)
view
10 x 2 include/unifex
include/unifex
98:112 (3%)
123:137 (3%)
view
10 x 2 include/unifex
include/unifex
121:131 (11%)
194:204 (6%)
view
10 x 2 include/unifex/linux
include/unifex/linux
82:96 (1%)
84:98 (1%)
view
10 x 2 include/unifex/win32
include/unifex/win32
354:380 (2%)
606:631 (2%)
view
Duplicated Units
The list of top 9 duplicated units.
See data for all 9 unit duplicates...
Size#FoldersFilesLinesCode
13 x 2 include/unifex/linux
include/unifex/linux
766:786 
345:365 
view
13 x 2 include/unifex/linux
include/unifex/linux
788:805 
367:384 
view
10 x 2 include/unifex
include/unifex
174:185 
155:166 
view
9 x 2 include/unifex/linux
include/unifex/linux
820:836 
399:415 
view
8 x 2 include/unifex/linux
include/unifex/linux
838:850 
417:429 
view
6 x 2 include/unifex
include/unifex
134:141 
142:149 
view
6 x 2 include/unifex/linux
include/unifex/linux
332:339 
213:220 
view
6 x 2 include/unifex/linux
include/unifex/linux
732:741 
311:320 
view
6 x 2 source/linux
source/linux
361:369 
685:693 
view