apple / swift-docc-render
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
  • 8% duplication:
    • 18,733 cleaned lines of cleaned code (without empty lines, comments, and frequently duplicated constructs such as imports)
    • 1,684 duplicated lines
  • 224 duplicates
system8% (1,684 lines)
Duplication per Extension
vue10% (1,634 lines)
js1% (38 lines)
scss<1% (12 lines)
Duplication per Component (primary)
src/components10% (1,541 lines)
src/views22% (86 lines)
src/utils3% (38 lines)
src/styles<1% (12 lines)
src3% (7 lines)
app0% (0 lines)
ROOT0% (0 lines)
src/assets0% (0 lines)
src/constants0% (0 lines)
src/directives0% (0 lines)
src/mixins0% (0 lines)
src/plugins0% (0 lines)
src/setup-utils0% (0 lines)
src/stores0% (0 lines)
Longest Duplicates
The list of 20 longest duplicates.
See data for all 224 duplicates...
Size#FoldersFilesLinesCode
20 x 2 src/views
src/views
Topic.vue
TutorialsOverview.vue
72:91 (15%)
43:62 (34%)
view
16 x 2 src/components
src/components/Tutorial
CallToAction.vue
CallToAction.vue
81:96 (12%)
36:51 (41%)
view
13 x 2 src/components
src/components
ReplayableVideoAsset.vue
VideoAsset.vue
42:54 (16%)
38:50 (12%)
view
12 x 2 src/utils
src/utils
json-patch.js
json-patch.js
120:141 (10%)
172:188 (10%)
view
12 x 2 src/components
src/components
ContentNode.vue
ContentNode.vue
118:129 (2%)
135:146 (2%)
view
11 x 2 src/components/ContentNode
src/components
InlineImage.vue
ImageAsset.vue
21:31 (50%)
85:95 (16%)
view
11 x 2 src/components/DocumentationTopic
src/components/Tutorial
OnThisPageSection.vue
Section.vue
25:35 (35%)
58:68 (13%)
view
11 x 2 src/components/ContentNode
src/components/ContentNode
ReferenceExternal.vue
ReferenceInternal.vue
19:29 (64%)
19:29 (64%)
view
10 x 2 src/views
src/views
Topic.vue
TutorialsOverview.vue
137:146 (7%)
62:71 (17%)
view
10 x 2 src/components/DocumentationTopic/PrimaryContent
src/components/DocumentationTopic/PrimaryContent
Parameters.vue
PropertyListKeyDetails.vue
56:67 (18%)
79:90 (15%)
view
10 x 2 src/views
src/views
DocumentationTopic.vue
TutorialsOverview.vue
184:193 (5%)
62:71 (17%)
view
10 x 2 src/components/DocumentationTopic/PrimaryContent
src/components/DocumentationTopic/PrimaryContent
PropertyTable.vue
RestParameters.vue
114:125 (10%)
108:119 (10%)
view
10 x 2 src/components
src/components/DocumentationTopic
Article.vue
PrimaryContent.vue
78:87 (6%)
68:77 (6%)
view
10 x 2 src/views
src/views
DocumentationTopic.vue
Topic.vue
184:193 (5%)
137:146 (7%)
view
10 x 2 src/components/DocumentationTopic
src/components/DocumentationTopic
ContentTable.vue
OnThisPageSection.vue
30:39 (27%)
27:36 (32%)
view
10 x 2 src/components/TutorialsOverview
src/components/TutorialsOverview
Chapter.vue
Resources.vue
42:51 (7%)
26:35 (18%)
view
9 x 2 src/components/DocumentationTopic/PrimaryContent
src/components/DocumentationTopic/PrimaryContent
PropertyTable.vue
RestParameters.vue
78:86 (9%)
72:80 (9%)
view
9 x 2 src/components/DocumentationTopic/PrimaryContent
src/components/DocumentationTopic/PrimaryContent
PropertyTable.vue
RestBody.vue
115:125 (9%)
157:167 (6%)
view
9 x 2 src/components
src/components
ContentNode.vue
ContentNode.vue
108:116 (1%)
150:158 (1%)
view
9 x 2 src/components/DocumentationTopic
src/components
OnThisPageSection.vue
LinkableElement.vue
23:31 (29%)
32:40 (11%)
view