bazelbuild / rules_cc
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
  • 24% duplication:
    • 10,550 cleaned lines of cleaned code (without empty lines, comments, and frequently duplicated constructs such as imports)
    • 2,579 duplicated lines
  • 791 duplicates
system24% (2,579 lines)
Duplication per Extension
bzl30% (2,316 lines)
tpl28% (165 lines)
py6% (68 lines)
go2% (30 lines)
Duplication per Component (primary)
cc/private/toolchain34% (2,287 lines)
tools/migration5% (116 lines)
cc8% (111 lines)
cc/private/rules_impl30% (39 lines)
ROOT50% (26 lines)
tools/runfiles0% (0 lines)

Duplication Between Components (50+ lines)

G cc cc cc/private/toolchain cc/private/toolchain cc--cc/private/toolchain 290 cc/private/rules_impl cc/private/rules_impl cc--cc/private/rules_impl 127 ROOT ROOT cc--ROOT 111 cc/private/toolchain--ROOT 212 cc/private/rules_impl--cc/private/toolchain 220 cc/private/rules_impl--ROOT 60

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 791 duplicates...
Size#FoldersFilesLinesCode
61 x 2 cc/private/toolchain
cc/private/toolchain
cc_toolchain_config.bzl
cc_toolchain_config.bzl
631:691 (4%)
717:777 (4%)
view
61 x 2 cc/private/toolchain
cc/private/toolchain
cc_toolchain_config.bzl
cc_toolchain_config.bzl
543:603 (4%)
717:777 (4%)
view
61 x 2 cc/private/toolchain
cc/private/toolchain
cc_toolchain_config.bzl
cc_toolchain_config.bzl
543:603 (4%)
631:691 (4%)
view
47 x 2 cc/private/toolchain
cc/private/toolchain
unix_cc_toolchain_config.bzl
windows_cc_toolchain_config.bzl
24:75 (4%)
29:80 (3%)
view
24 x 2 cc/private/toolchain
cc/private/toolchain
cc_toolchain_config.bzl
cc_toolchain_config.bzl
605:628 (1%)
693:716 (1%)
view
22 x 2 cc/private/toolchain
cc/private/toolchain
freebsd_cc_toolchain_config.bzl
unix_cc_toolchain_config.bzl
26:49 (7%)
26:49 (1%)
view
22 x 2 cc/private/toolchain
cc/private/toolchain
freebsd_cc_toolchain_config.bzl
windows_cc_toolchain_config.bzl
26:49 (7%)
31:54 (1%)
view
21 x 2 cc/private/toolchain
cc/private/toolchain
cc_toolchain_config.bzl
cc_toolchain_config.bzl
424:444 (1%)
456:476 (1%)
view
20 x 2 cc/private/toolchain
cc/private/toolchain
cc_toolchain_config.bzl
cc_toolchain_config.bzl
517:536 (1%)
605:624 (1%)
view
20 x 2 cc/private/toolchain
cc/private/toolchain
cc_toolchain_config.bzl
cc_toolchain_config.bzl
605:624 (1%)
779:798 (1%)
view
20 x 2 cc/private/toolchain
cc/private/toolchain
cc_toolchain_config.bzl
cc_toolchain_config.bzl
517:536 (1%)
693:712 (1%)
view
20 x 2 cc/private/toolchain
cc/private/toolchain
cc_toolchain_config.bzl
cc_toolchain_config.bzl
517:536 (1%)
779:798 (1%)
view
20 x 2 cc/private/toolchain
cc/private/toolchain
cc_toolchain_config.bzl
cc_toolchain_config.bzl
693:712 (1%)
779:798 (1%)
view
18 x 2 cc/private/toolchain
cc/private/toolchain
cc_toolchain_config.bzl
cc_toolchain_config.bzl
426:443 (1%)
695:712 (1%)
view
18 x 2 cc/private/toolchain
cc/private/toolchain
cc_toolchain_config.bzl
cc_toolchain_config.bzl
426:443 (1%)
781:798 (1%)
view
18 x 2 cc/private/toolchain
cc/private/toolchain
cc_toolchain_config.bzl
cc_toolchain_config.bzl
426:443 (1%)
607:624 (1%)
view
18 x 2 cc/private/toolchain
cc/private/toolchain
cc_toolchain_config.bzl
cc_toolchain_config.bzl
458:475 (1%)
781:798 (1%)
view
18 x 2 cc/private/toolchain
cc/private/toolchain
cc_toolchain_config.bzl
cc_toolchain_config.bzl
458:475 (1%)
519:536 (1%)
view
18 x 2 cc/private/toolchain
cc/private/toolchain
cc_toolchain_config.bzl
cc_toolchain_config.bzl
426:443 (1%)
519:536 (1%)
view
18 x 2 cc/private/toolchain
cc/private/toolchain
cc_toolchain_config.bzl
cc_toolchain_config.bzl
458:475 (1%)
695:712 (1%)
view
Duplicated Units
The list of top 1 duplicated units.
See data for all 1 unit duplicate
Size#FoldersFilesLinesCode
8 x 2 tools/migration
tools/migration
ctoolchain_comparator.py
legacy_fields_migrator.py
0:0 
0:0 
view