microsoft / msr-cloak
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
  • 25% duplication:
    • 1,260 cleaned lines of cleaned code (without empty lines, comments, and frequently duplicated constructs such as imports)
    • 327 duplicated lines
  • 38 duplicates
system25% (327 lines)
Duplication per Extension
vcxproj74% (241 lines)
cpp10% (60 lines)
asm8% (26 lines)
Duplication per Component (primary)
src/CodeSetSize48% (117 lines)
src/CodeAbortTimings17% (83 lines)
src/ReadSetSize52% (59 lines)
src/CodeProtectionSize34% (49 lines)
src/RemainingLeakage10% (19 lines)
src0% (0 lines)

Duplication Between Components (50+ lines)

G src/CodeAbortTimings src/CodeAbortTimings src/ReadSetSize src/ReadSetSize src/CodeAbortTimings--src/ReadSetSize 118 src/CodeSetSize src/CodeSetSize src/CodeAbortTimings--src/CodeSetSize 106 src/CodeProtectionSize src/CodeProtectionSize src/CodeAbortTimings--src/CodeProtectionSize 94 src/CodeSetSize--src/ReadSetSize 106 src/CodeProtectionSize--src/CodeSetSize 96 src/CodeProtectionSize--src/ReadSetSize 94

Download: SVG DOT (open online Graphviz editor)

Open 3D force graph...

Show more details on duplication between components...
Longest Duplicates
The list of 20 longest duplicates.
See data for all 38 duplicates...
Size#FoldersFilesLinesCode
29 x 2 src/CodeAbortTimings
src/ReadSetSize
vcxproj
CodeAbortTimings.vcxproj
ReadSetSize.vcxproj
16:52 (42%)
16:52 (42%)
view
27 x 2 src/CodeAbortTimings
src/CodeSetSize
vcxproj
CodeAbortTimings.vcxproj
CodeSetSize.vcxproj
18:50 (39%)
18:50 (45%)
view
27 x 2 src/CodeSetSize
src/ReadSetSize
vcxproj
CodeSetSize.vcxproj
ReadSetSize.vcxproj
18:50 (45%)
18:50 (39%)
view
24 x 2 src/CodeProtectionSize
src/CodeSetSize
vcxproj
CodeProtectionSize.vcxproj
CodeSetSize.vcxproj
35:66 (44%)
36:67 (40%)
view
15 x 2 src/CodeProtectionSize
src/ReadSetSize
vcxproj
CodeProtectionSize.vcxproj
ReadSetSize.vcxproj
16:33 (27%)
16:33 (22%)
view
15 x 2 src/CodeAbortTimings
src/CodeProtectionSize
vcxproj
CodeAbortTimings.vcxproj
CodeProtectionSize.vcxproj
16:33 (22%)
16:33 (27%)
view
14 x 2 src/CodeAbortTimings
src/ReadSetSize
vcxproj
CodeAbortTimings.vcxproj
ReadSetSize.vcxproj
55:72 (20%)
55:72 (20%)
view
14 x 2 src/CodeProtectionSize
src/CodeSetSize
vcxproj
CodeProtectionSize.vcxproj
CodeSetSize.vcxproj
18:33 (25%)
18:33 (23%)
view
12 x 2 src/CodeProtectionSize
src/ReadSetSize
vcxproj
CodeProtectionSize.vcxproj
ReadSetSize.vcxproj
35:49 (22%)
36:50 (17%)
view
12 x 2 src/CodeAbortTimings
src/CodeProtectionSize
vcxproj
CodeAbortTimings.vcxproj
CodeProtectionSize.vcxproj
36:50 (17%)
35:49 (22%)
view
11 x 2 src/CodeSetSize
src/CodeSetSize
CodeSetSize.cpp
CodeSetSize.cpp
49:63 (8%)
83:97 (8%)
view
10 x 2 src/CodeAbortTimings
src/RemainingLeakage
vcxproj
CodeAbortTimings.vcxproj
RemainingLeakage.vcxproj
1:13 (14%)
1:13 (13%)
view
10 x 2 src/CodeProtectionSize
src/RemainingLeakage
vcxproj
CodeProtectionSize.vcxproj
RemainingLeakage.vcxproj
1:13 (18%)
1:13 (13%)
view
10 x 2 src/CodeAbortTimings
src/CodeSetSize
vcxproj
CodeAbortTimings.vcxproj
CodeSetSize.vcxproj
1:13 (14%)
1:13 (16%)
view
10 x 2 src/CodeAbortTimings
src/ReadSetSize
vcxproj
CodeAbortTimings.vcxproj
ReadSetSize.vcxproj
1:13 (14%)
1:13 (14%)
view
10 x 2 src/CodeSetSize
src/ReadSetSize
vcxproj
CodeSetSize.vcxproj
ReadSetSize.vcxproj
53:63 (16%)
62:72 (14%)
view
10 x 2 src/ReadSetSize
src/RemainingLeakage
vcxproj
ReadSetSize.vcxproj
RemainingLeakage.vcxproj
1:13 (14%)
1:13 (13%)
view
10 x 2 src/CodeAbortTimings
src/CodeSetSize
vcxproj
CodeAbortTimings.vcxproj
CodeSetSize.vcxproj
62:72 (14%)
53:63 (16%)
view
10 x 2 src/CodeSetSize
src/ReadSetSize
vcxproj
CodeSetSize.vcxproj
ReadSetSize.vcxproj
1:13 (16%)
1:13 (14%)
view
10 x 2 src/CodeProtectionSize
src/CodeSetSize
vcxproj
CodeProtectionSize.vcxproj
CodeSetSize.vcxproj
1:13 (18%)
1:13 (16%)
view