microsoft / VS-PPT
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
  • 6% duplication:
    • 4,974 cleaned lines of cleaned code (without empty lines, comments, and frequently duplicated constructs such as imports)
    • 313 duplicated lines
  • 44 duplicates
system6% (313 lines)
Duplication per Extension
cs5% (245 lines)
vsixmanifest38% (68 lines)
Duplication per Component (primary)
src/Structure6% (121 lines)
src/OptionsPage17% (48 lines)
src/MatchMargin10% (45 lines)
src/PeekF18% (37 lines)
src/GoToDef8% (26 lines)
src/CopyAsHtml2% (18 lines)
src/MiddleClickScroll4% (6 lines)
src/SyntacticFisheye7% (6 lines)
src/FixMixedTabs2% (6 lines)
src0% (0 lines)
src/TelemetryForPPT0% (0 lines)
src/TimeStampMargin0% (0 lines)

Duplication Between Components (50+ lines)

G src/MatchMargin src/MatchMargin src/Structure src/Structure src/MatchMargin--src/Structure 122 src/OptionsPage src/OptionsPage src/MatchMargin--src/OptionsPage 64 src/PeekF1 src/PeekF1 src/MatchMargin--src/PeekF1 54 src/OptionsPage--src/Structure 108 src/OptionsPage--src/PeekF1 74 src/PeekF1--src/Structure 81

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 44 duplicates...
Size#FoldersFilesLinesCode
23 x 2 src/MatchMargin
src/Structure/BlockTagger
Strings.Designer.cs
Strings.Designer.cs
23:81 (60%)
23:81 (60%)
view
23 x 2 src/OptionsPage
src/Structure/StructureVisualizer
Strings.Designer.cs
Strings.Designer.cs
23:81 (60%)
23:81 (60%)
view
23 x 2 src/Structure/BlockTagger
src/Structure/StructureVisualizer
Strings.Designer.cs
Strings.Designer.cs
23:81 (60%)
23:81 (60%)
view
23 x 2 src/MatchMargin
src/Structure/StructureVisualizer
Strings.Designer.cs
Strings.Designer.cs
23:81 (60%)
23:81 (60%)
view
23 x 2 src/OptionsPage
src/Structure/BlockTagger
Strings.Designer.cs
Strings.Designer.cs
23:81 (60%)
23:81 (60%)
view
23 x 2 src/MatchMargin
src/OptionsPage
Strings.Designer.cs
Strings.Designer.cs
23:81 (60%)
23:81 (60%)
view
13 x 2 src/Structure/BlockTagger
src/Structure/BlockTaggerImpl
vsixmanifest
source.extension.vsixmanifest
source.extension.vsixmanifest
10:26 (59%)
10:26 (59%)
view
11 x 2 src/OptionsPage
src/PeekF1/src
Strings.Designer.cs
Resources.Designer.cs
23:47 (28%)
23:47 (28%)
view
11 x 2 src/PeekF1/src
src/Structure/StructureVisualizer
Resources.Designer.cs
Strings.Designer.cs
23:47 (28%)
23:47 (28%)
view
11 x 2 src/MatchMargin
src/PeekF1/src
Strings.Designer.cs
Resources.Designer.cs
23:47 (28%)
23:47 (28%)
view
11 x 2 src/PeekF1/src
src/Structure/BlockTagger
Resources.Designer.cs
Strings.Designer.cs
23:47 (28%)
23:47 (28%)
view
10 x 2 src/OptionsPage
src/PeekF1/src
GlobalSuppressions.cs
GlobalSuppressions.cs
1:21 (100%)
1:21 (90%)
view
9 x 2 src/MatchMargin
src/PeekF1/src
Strings.Designer.cs
Resources.Designer.cs
1:17 (23%)
1:17 (23%)
view
9 x 2 src/MatchMargin
src/OptionsPage
Strings.Designer.cs
Strings.Designer.cs
1:17 (23%)
1:17 (23%)
view
9 x 2 src/MatchMargin
src/Structure/BlockTagger
Strings.Designer.cs
Strings.Designer.cs
1:17 (23%)
1:17 (23%)
view
9 x 2 src/OptionsPage
src/PeekF1/src
Strings.Designer.cs
Resources.Designer.cs
1:17 (23%)
1:17 (23%)
view
9 x 2 src/Structure/BlockTagger
src/Structure/StructureVisualizer
Strings.Designer.cs
Strings.Designer.cs
1:17 (23%)
1:17 (23%)
view
9 x 2 src/OptionsPage
src/Structure/BlockTagger
Strings.Designer.cs
Strings.Designer.cs
1:17 (23%)
1:17 (23%)
view
9 x 2 src/PeekF1/src
src/Structure/StructureVisualizer
Resources.Designer.cs
Strings.Designer.cs
1:17 (23%)
1:17 (23%)
view
9 x 2 src/MatchMargin
src/Structure/StructureVisualizer
Strings.Designer.cs
Strings.Designer.cs
1:17 (23%)
1:17 (23%)
view
Duplicated Units
The list of top 2 duplicated units.
See data for all 2 unit duplicates...
Size#FoldersFilesLinesCode
9 x 2 src/MatchMargin
src/Structure/BlockTaggerImpl
MatchMarginElement.cs
GenericBlockTagger.cs
277:287 
84:94 
view
7 x 2 src/PeekF1/src/Peek
src/PeekF1/src/Peek
F1PeekResultSource.cs
F1PeekableItem.cs
11:18 
11:19 
view