microsoft / OpenAPI.NET.CSharpAnnotations
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
  • 10% duplication:
    • 3,050 cleaned lines of cleaned code (without empty lines, comments, and frequently duplicated constructs such as imports)
    • 326 duplicated lines
  • 159 duplicates
system10% (326 lines)
Duplication per Extension
cs10% (326 lines)
Duplication per Component (primary)
Microsoft.OpenApi.CSharpAnnotations.DocumentGeneration/OperationFilters40% (143 lines)
Microsoft.OpenApi.CSharpAnnotations.DocumentGeneration/PreprocessingOperationFilters24% (51 lines)
Microsoft.OpenApi.CSharpAnnotations.DocumentGeneration6% (50 lines)
Microsoft.OpenApi.CSharpAnnotations.DocumentGeneration/DocumentFilters40% (43 lines)
Microsoft.OpenApi.CSharpAnnotations.DocumentGeneration/AssemblyLoader3% (12 lines)
Microsoft.OpenApi.CSharpAnnotations.DocumentGeneration/DocumentConfigFilters10% (7 lines)
Microsoft.OpenApi.CSharpAnnotations.DocumentGeneration/OperationConfigFilters19% (7 lines)
Microsoft.OpenApi.CSharpAnnotations.DocumentGeneration/PostProcessingDocumentFilters19% (7 lines)
Microsoft.OpenApi.CSharpAnnotations.DocumentGeneration/Extensions1% (6 lines)
Microsoft.OpenApi.CSharpAnnotations.DocumentGeneration/Exceptions0% (0 lines)
Microsoft.OpenApi.CSharpAnnotations.DocumentGeneration/Models0% (0 lines)
Microsoft.OpenApi.CSharpAnnotations.DocumentGeneration/Properties0% (0 lines)
Microsoft.OpenApi.CSharpAnnotations.DocumentGeneration/ReferenceRegistries0% (0 lines)

Duplication Between Components (50+ lines)

G Microsoft.OpenApi.CSharpAnnotations.DocumentGeneration/DocumentFilters Microsoft.OpenApi.CSharpAnnotations.DocumentGeneration/DocumentFilters Microsoft.OpenApi.CSharpAnnotations.DocumentGeneration/OperationFilters Microsoft.OpenApi.CSharpAnnotations.DocumentGeneration/OperationFilters Microsoft.OpenApi.CSharpAnnotations.DocumentGeneration/DocumentFilters--Microsoft.OpenApi.CSharpAnnotations.DocumentGeneration/OperationFilters 82 Microsoft.OpenApi.CSharpAnnotations.DocumentGeneration/PreprocessingOperationFilters Microsoft.OpenApi.CSharpAnnotations.DocumentGeneration/PreprocessingOperationFilters Microsoft.OpenApi.CSharpAnnotations.DocumentGeneration/OperationFilters--Microsoft.OpenApi.CSharpAnnotations.DocumentGeneration/PreprocessingOperationFilters 80 Microsoft.OpenApi.CSharpAnnotations.DocumentGeneration/PostProcessingDocumentFilters Microsoft.OpenApi.CSharpAnnotations.DocumentGeneration/PostProcessingDocumentFilters Microsoft.OpenApi.CSharpAnnotations.DocumentGeneration/OperationFilters--Microsoft.OpenApi.CSharpAnnotations.DocumentGeneration/PostProcessingDocumentFilters 54 Microsoft.OpenApi.CSharpAnnotations.DocumentGeneration/OperationConfigFilters Microsoft.OpenApi.CSharpAnnotations.DocumentGeneration/OperationConfigFilters Microsoft.OpenApi.CSharpAnnotations.DocumentGeneration/OperationConfigFilters--Microsoft.OpenApi.CSharpAnnotations.DocumentGeneration/OperationFilters 54 Microsoft.OpenApi.CSharpAnnotations.DocumentGeneration/DocumentConfigFilters Microsoft.OpenApi.CSharpAnnotations.DocumentGeneration/DocumentConfigFilters Microsoft.OpenApi.CSharpAnnotations.DocumentGeneration/DocumentConfigFilters--Microsoft.OpenApi.CSharpAnnotations.DocumentGeneration/OperationFilters 51

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 159 duplicates...
Size#FoldersFilesLinesCode
9 x 2 src/Microsoft.OpenApi.CS...ions.DocumentGeneration
src/Microsoft.OpenApi.CS...ions.DocumentGeneration
InternalOpenApiGenerator.cs
InternalOpenApiGenerator.cs
535:546 (2%)
565:576 (2%)
view
9 x 2 src/Microsoft.OpenApi.CS...ions.DocumentGeneration
src/Microsoft.OpenApi.CS...ions.DocumentGeneration
InternalOpenApiGenerator.cs
InternalOpenApiGenerator.cs
309:318 (2%)
324:333 (2%)
view
8 x 2 src/Microsoft.OpenApi.CS...eration/DocumentFilters
src/Microsoft.OpenApi.CS...cessingOperationFilters
AssemblyNameToInfoFilter.cs
BranchOptionalPathParametersFilter.cs
55:67 (32%)
76:89 (12%)
view
8 x 2 src/Microsoft.OpenApi.CS...ration/OperationFilters
src/Microsoft.OpenApi.CS...ration/OperationFilters
ParamToRequestBodyFilter.cs
ResponseToResponseFilter.cs
97:114 (10%)
103:118 (9%)
view
7 x 2 src/Microsoft.OpenApi.CS...ration/OperationFilters
src/Microsoft.OpenApi.CS...ration/OperationFilters
ParamToParameterFilter.cs
ResponseToResponseFilter.cs
124:137 (8%)
105:118 (8%)
view
7 x 2 src/Microsoft.OpenApi.CS...ration/OperationFilters
src/Microsoft.OpenApi.CS...ration/OperationFilters
RemarksToDescriptionFilter.cs
SecurityToSecurityRequirementOperatio...
57:67 (33%)
74:84 (21%)
view
7 x 2 src/Microsoft.OpenApi.CS...eration/DocumentFilters
src/Microsoft.OpenApi.CS...ration/OperationFilters
SecurityToSecurityRequirementDocument...
ResponseToResponseFilter.cs
86:96 (18%)
199:209 (8%)
view
7 x 2 src/Microsoft.OpenApi.CS...eration/DocumentFilters
src/Microsoft.OpenApi.CS...cessingOperationFilters
UrlToServerFilter.cs
ConvertAlternativeParamTagsFilter.cs
65:75 (23%)
154:164 (9%)
view
7 x 2 src/Microsoft.OpenApi.CS...eration/DocumentFilters
src/Microsoft.OpenApi.CS...eration/DocumentFilters
AssemblyNameToInfoFilter.cs
UrlToServerFilter.cs
30:38 (28%)
31:39 (23%)
view
7 x 2 src/Microsoft.OpenApi.CS...eration/DocumentFilters
src/Microsoft.OpenApi.CS...ration/OperationFilters
AssemblyNameToInfoFilter.cs
SecurityToSecurityRequirementOperatio...
57:67 (28%)
74:84 (21%)
view
7 x 2 src/Microsoft.OpenApi.CS...eration/DocumentFilters
src/Microsoft.OpenApi.CS...ration/OperationFilters
UrlToServerFilter.cs
SummaryToSummaryFilter.cs
65:75 (23%)
56:66 (35%)
view
7 x 2 src/Microsoft.OpenApi.CS...ration/OperationFilters
src/Microsoft.OpenApi.CS...cessingOperationFilters
ResponseToResponseFilter.cs
PopulateInAttributeFilter.cs
199:209 (8%)
81:91 (17%)
view
7 x 2 src/Microsoft.OpenApi.CS...eration/DocumentFilters
src/Microsoft.OpenApi.CS...ration/OperationFilters
SecurityToSecurityRequirementDocument...
SecurityToSecurityRequirementOperatio...
86:96 (18%)
74:84 (21%)
view
7 x 2 src/Microsoft.OpenApi.CS...ration/OperationFilters
src/Microsoft.OpenApi.CS...cessingOperationFilters
ResponseToResponseFilter.cs
ConvertAlternativeParamTagsFilter.cs
199:209 (8%)
154:164 (9%)
view
7 x 2 src/Microsoft.OpenApi.CS...cessingOperationFilters
src/Microsoft.OpenApi.CS...cessingOperationFilters
ConvertAlternativeParamTagsFilter.cs
PopulateInAttributeFilter.cs
154:164 (9%)
81:91 (17%)
view
7 x 2 src/Microsoft.OpenApi.CS...eration/DocumentFilters
src/Microsoft.OpenApi.CS...ration/OperationFilters
UrlToServerFilter.cs
ParamToParameterFilter.cs
65:75 (23%)
155:165 (8%)
view
7 x 2 src/Microsoft.OpenApi.CS...eration/DocumentFilters
src/Microsoft.OpenApi.CS...cessingOperationFilters
SecurityToSecurityRequirementDocument...
BranchOptionalPathParametersFilter.cs
86:96 (18%)
79:89 (10%)
view
7 x 2 src/Microsoft.OpenApi.CS...eration/DocumentFilters
src/Microsoft.OpenApi.CS...ration/OperationFilters
UrlToServerFilter.cs
RemarksToDescriptionFilter.cs
65:75 (23%)
57:67 (33%)
view
7 x 2 src/Microsoft.OpenApi.CS...eration/DocumentFilters
src/Microsoft.OpenApi.CS...eration/DocumentFilters
AssemblyNameToInfoFilter.cs
UrlToServerFilter.cs
57:67 (28%)
65:75 (23%)
view
7 x 2 src/Microsoft.OpenApi.CS...eration/DocumentFilters
src/Microsoft.OpenApi.CS...ration/OperationFilters
UrlToServerFilter.cs
ResponseToResponseFilter.cs
65:75 (23%)
199:209 (8%)
view