microsoft / ChakraCore-Debugger
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
  • 12% duplication:
    • 9,928 cleaned lines of cleaned code (without empty lines, comments, and frequently duplicated constructs such as imports)
    • 1,212 duplicated lines
  • 97 duplicates
system12% (1,212 lines)
Duplication per Extension
cpp12% (708 lines)
h9% (351 lines)
vcxproj45% (113 lines)
filters16% (28 lines)
props13% (12 lines)
Duplication per Component (primary)
lib/Debugger.Protocol/Generated/protocol16% (1,041 lines)
lib/Debugger.Service16% (60 lines)
lib/Debugger.ProtocolHandler2% (59 lines)
lib/Debugger.Protocol9% (40 lines)
PropertySheets16% (12 lines)
ROOT0% (0 lines)
NuGet0% (0 lines)
lib/Debugger.Protocol/Generated/include0% (0 lines)

Duplication Between Components (50+ lines)

G lib/Debugger.Protocol lib/Debugger.Protocol lib/Debugger.ProtocolHandler lib/Debugger.ProtocolHandler lib/Debugger.Protocol--lib/Debugger.ProtocolHandler 80 lib/Debugger.Service lib/Debugger.Service lib/Debugger.Protocol--lib/Debugger.Service 78 lib/Debugger.ProtocolHandler--lib/Debugger.Service 80

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 97 duplicates...
Size#FoldersFilesLinesCode
30 x 2 lib/Debugger.Protocol/Generated/protocol
lib/Debugger.Protocol/Generated/protocol
Debugger.cpp
Debugger.cpp
287:316 (2%)
375:404 (2%)
view
28 x 2 lib/Debugger.Protocol/Generated/protocol
lib/Debugger.Protocol/Generated/protocol
Console.cpp
Debugger.cpp
183:223 (17%)
750:790 (2%)
view
25 x 2 lib/Debugger.Protocol/Generated/protocol
lib/Debugger.Protocol/Generated/protocol
Runtime.cpp
Runtime.cpp
1288:1318 (1%)
1431:1461 (1%)
view
22 x 2 lib/Debugger.Protocol/Generated/protocol
lib/Debugger.Protocol/Generated/protocol
Runtime.h
Runtime.h
82:105 (1%)
369:392 (1%)
view
22 x 2 lib/Debugger.Protocol
lib/Debugger.ProtocolHandler
vcxproj
ChakraCore.Debugger.Protocol.vcxproj
ChakraCore.Debugger.ProtocolHandler.v...
1:29 (31%)
1:29 (22%)
view
21 x 2 lib/Debugger.Protocol
lib/Debugger.Service
vcxproj
ChakraCore.Debugger.Protocol.vcxproj
ChakraCore.Debugger.Service.vcxproj
2:29 (30%)
2:29 (27%)
view
21 x 2 lib/Debugger.ProtocolHandler
lib/Debugger.Service
vcxproj
ChakraCore.Debugger.ProtocolHandler.v...
ChakraCore.Debugger.Service.vcxproj
2:29 (21%)
2:29 (27%)
view
19 x 2 lib/Debugger.Protocol/Generated/protocol
lib/Debugger.Protocol/Generated/protocol
Debugger.h
Debugger.h
551:577 (2%)
746:772 (2%)
view
18 x 2 lib/Debugger.Protocol/Generated/protocol
lib/Debugger.Protocol/Generated/protocol
Debugger.cpp
Runtime.cpp
1221:1240 (1%)
1261:1280 (1%)
view
17 x 2 lib/Debugger.Protocol/Generated/protocol
lib/Debugger.Protocol/Generated/protocol
Debugger.h
Schema.h
1158:1184 (2%)
119:145 (22%)
view
17 x 2 lib/Debugger.Protocol/Generated/protocol
lib/Debugger.Protocol/Generated/protocol
Console.h
Debugger.h
247:273 (10%)
1158:1184 (2%)
view
17 x 2 lib/Debugger.Protocol/Generated/protocol
lib/Debugger.Protocol/Generated/protocol
Console.h
Runtime.h
247:273 (10%)
2023:2049 (1%)
view
17 x 2 lib/Debugger.Protocol/Generated/protocol
lib/Debugger.Protocol/Generated/protocol
Runtime.h
Schema.h
2023:2049 (1%)
119:145 (22%)
view
17 x 2 lib/Debugger.Protocol/Generated/protocol
lib/Debugger.Protocol/Generated/protocol
Debugger.h
Runtime.h
1158:1184 (2%)
2023:2049 (1%)
view
17 x 2 lib/Debugger.Protocol/Generated/protocol
lib/Debugger.Protocol/Generated/protocol
Console.h
Schema.h
247:273 (10%)
119:145 (22%)
view
16 x 2 lib/Debugger.Protocol/Generated/protocol
lib/Debugger.Protocol/Generated/protocol
Debugger.cpp
Runtime.cpp
769:790 (1%)
1578:1599 (1%)
view
16 x 2 lib/Debugger.Protocol/Generated/protocol
lib/Debugger.Protocol/Generated/protocol
Console.cpp
Runtime.cpp
202:223 (10%)
1578:1599 (1%)
view
15 x 2 lib/Debugger.Protocol/Generated/protocol
lib/Debugger.Protocol/Generated/protocol
Debugger.cpp
Runtime.cpp
1236:1252 (1%)
1425:1441 (1%)
view
15 x 2 lib/Debugger.Protocol/Generated/protocol
lib/Debugger.Protocol/Generated/protocol
Runtime.h
Runtime.h
382:397 (1%)
537:552 (1%)
view
14 x 2 lib/Debugger.Protocol/Generated/protocol
lib/Debugger.Protocol/Generated/protocol
Debugger.h
Debugger.h
717:732 (1%)
902:917 (1%)
view
Duplicated Units
The list of top 5 duplicated units.
See data for all 5 unit duplicates...
Size#FoldersFilesLinesCode
11 x 4 lib/Debugger.Protocol/Generated/protocol
lib/Debugger.Protocol/Generated/protocol
lib/Debugger.Protocol/Generated/protocol
lib/Debugger.Protocol/Generated/protocol
Console.cpp
Debugger.cpp
Runtime.cpp
Schema.cpp
187:199 
754:766 
1215:1227 
114:126 
view
9 x 3 lib/Debugger.Protocol/Generated/protocol
lib/Debugger.Protocol/Generated/protocol
lib/Debugger.Protocol/Generated/protocol
Console.cpp
Debugger.cpp
Runtime.cpp
202:212 
769:779 
1578:1588 
view
9 x 3 lib/Debugger.Protocol/Generated/protocol
lib/Debugger.Protocol/Generated/protocol
lib/Debugger.Protocol/Generated/protocol
Console.cpp
Debugger.cpp
Runtime.cpp
214:224 
781:791 
1590:1600 
view
7 x 2 lib/Debugger.Protocol/Generated/protocol
lib/Debugger.Protocol/Generated/protocol
Runtime.cpp
Runtime.cpp
1235:1242 
1329:1336 
view
6 x 2 lib/Debugger.Protocol/Generated/protocol
lib/Debugger.Protocol/Generated/protocol
Protocol.h
Protocol.h
675:681 
730:736 
view