microsoft / krabsetw
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
  • 5% duplication:
    • 4,902 cleaned lines of cleaned code (without empty lines, comments, and frequently duplicated constructs such as imports)
    • 272 duplicated lines
  • 27 duplicates
system5% (272 lines)
Duplication per Extension
hpp4% (210 lines)
vcxproj34% (62 lines)
Duplication per Component (primary)
Microsoft.O365.Security.Native.ETW9% (126 lines)
krabs/krabs2% (56 lines)
krabs/krabs/filtering12% (52 lines)
Microsoft.O365.Security.Native.ETW/Filtering9% (22 lines)
Microsoft.O365.Security.Native.ETW/Testing8% (16 lines)
Microsoft.O365.Security.Native.ETW/Kernel0% (0 lines)
build/native0% (0 lines)
krabs0% (0 lines)
krabs/krabs/testing0% (0 lines)
Longest Duplicates
The list of 20 longest duplicates.
See data for all 27 duplicates...
Size#FoldersFilesLinesCode
17 x 2 Microsoft.O365.Security.Native.ETW
Microsoft.O365.Security.Native.ETW
vcxproj
Microsoft.O365.Security.Native.ETW.vc...
Microsoft.O365.Security.Native.ETW.vc...
86:106 (9%)
110:130 (9%)
view
14 x 2 Microsoft.O365.Security.Native.ETW
Microsoft.O365.Security.Native.ETW
vcxproj
Microsoft.O365.Security.Native.ETW.vc...
Microsoft.O365.Security.Native.ETW.vc...
144:161 (7%)
165:182 (7%)
view
14 x 2 Microsoft.O365.Security.Native.ETW
Microsoft.O365.Security.Native.ETW
Provider.hpp
RawProvider.hpp
111:150 (15%)
65:105 (25%)
view
10 x 2 krabs/krabs/filtering
krabs/krabs
event_filter.hpp
provider.hpp
81:100 (12%)
79:98 (4%)
view
8 x 2 Microsoft.O365.Security.Native.ETW/Testing
Microsoft.O365.Security.Native.ETW/Testing
RecordBuilder.hpp
RecordBuilder.hpp
97:108 (10%)
123:134 (10%)
view
8 x 2 krabs/krabs
krabs/krabs
trace.hpp
trace.hpp
310:320 (5%)
322:332 (5%)
view
8 x 2 Microsoft.O365.Security.Native.ETW/Filtering
Microsoft.O365.Security.Native.ETW
EventFilter.hpp
Provider.hpp
108:115 (10%)
196:203 (8%)
view
8 x 2 krabs/krabs
krabs/krabs
errors.hpp
errors.hpp
110:117 (7%)
139:146 (7%)
view
8 x 2 Microsoft.O365.Security.Native.ETW/Filtering
Microsoft.O365.Security.Native.ETW
EventFilter.hpp
Provider.hpp
152:169 (10%)
222:239 (8%)
view
7 x 2 krabs/krabs
krabs/krabs
provider.hpp
provider.hpp
129:137 (2%)
297:305 (2%)
view
7 x 2 Microsoft.O365.Security.Native.ETW
Microsoft.O365.Security.Native.ETW
KernelTrace.hpp
UserTrace.hpp
208:214 (10%)
195:201 (14%)
view
6 x 2 Microsoft.O365.Security.Native.ETW
Microsoft.O365.Security.Native.ETW
vcxproj
Microsoft.O365.Security.Native.ETW.vc...
Microsoft.O365.Security.Native.ETW.vc...
123:130 (3%)
175:182 (3%)
view
6 x 2 krabs/krabs/filtering
krabs/krabs/filtering
predicates.hpp
predicates.hpp
457:468 (2%)
471:482 (2%)
view
6 x 2 krabs/krabs/filtering
krabs/krabs/filtering
predicates.hpp
predicates.hpp
471:482 (2%)
485:496 (2%)
view
6 x 2 krabs/krabs/filtering
krabs/krabs/filtering
predicates.hpp
predicates.hpp
457:468 (2%)
485:496 (2%)
view
6 x 2 Microsoft.O365.Security.Native.ETW
Microsoft.O365.Security.Native.ETW
vcxproj
Microsoft.O365.Security.Native.ETW.vc...
Microsoft.O365.Security.Native.ETW.vc...
99:106 (3%)
154:161 (3%)
view
6 x 2 krabs/krabs/filtering
krabs/krabs/filtering
predicates.hpp
predicates.hpp
457:468 (2%)
499:510 (2%)
view
6 x 2 krabs/krabs/filtering
krabs/krabs/filtering
predicates.hpp
predicates.hpp
429:440 (2%)
457:468 (2%)
view
6 x 2 Microsoft.O365.Security.Native.ETW
Microsoft.O365.Security.Native.ETW
vcxproj
Microsoft.O365.Security.Native.ETW.vc...
Microsoft.O365.Security.Native.ETW.vc...
123:130 (3%)
154:161 (3%)
view
6 x 2 krabs/krabs/filtering
krabs/krabs/filtering
predicates.hpp
predicates.hpp
429:440 (2%)
485:496 (2%)
view
Duplicated Units
The list of top 4 duplicated units.
See data for all 4 unit duplicates...
Size#FoldersFilesLinesCode
18 x 2 Microsoft.O365.Security.Native.ETW/Filtering
Microsoft.O365.Security.Native.ETW
EventFilter.hpp
Provider.hpp
150:171 
220:241 
view
12 x 2 Microsoft.O365.Security.Native.ETW/Filtering
Microsoft.O365.Security.Native.ETW
EventFilter.hpp
Provider.hpp
190:203 
260:273 
view
10 x 2 Microsoft.O365.Security.Native.ETW
Microsoft.O365.Security.Native.ETW
KernelProvider.hpp
RawProvider.hpp
130:141 
153:164 
view
9 x 2 Microsoft.O365.Security.Native.ETW
Microsoft.O365.Security.Native.ETW
KernelTrace.hpp
UserTrace.hpp
206:215 
193:202 
view