Duplication Overall
- 8% duplication:
- 67,559 cleaned lines of cleaned code (without empty lines, comments, and frequently duplicated constructs such as imports)
- 5,513 duplicated lines
- 821 duplicates
Duplication per Extension
Duplication per Component (primary)
Duplication Between Components (50+ lines)
flowchart TB
n0["buffa-descriptor"]
n1["buffa-types"]
n2["benchmarks"]
n0 ---|"302"| n1
n2 ---|"290"| n1
n2 ---|"58"| n0
classDef default fill:#00b2ee,stroke:#ffffff,color:#000000;
classDef highlighted fill:#00b2ee,stroke:#ffffff,color:#000000;
linkStyle 0 stroke:#DC143CFF,stroke-width:10px
linkStyle 1 stroke:#DC143CED,stroke-width:9px
linkStyle 2 stroke:#DC143C5E,stroke-width:1px
Download:
Mermaid (.mmd)
(open online Mermaid editor)
2D force graph
|
3D force graph
Show more details on duplication between components...
From Component
--> To Component
Duplicated
Lines
File Pairs
Details
buffa-descriptor (1%)
  --> buffa-types (3%)
302
10 file pairs
details...
benchmarks (4%)
  --> buffa-types (2%)
290
9 file pairs
details...
benchmarks (<1%)
  --> buffa-descriptor (<1%)
58
1 file pair
details...
flowchart TB
n0["buffa-descriptor"]
n1["buffa-types"]
n2["benchmarks"]
n0 ---|"302"| n1
n2 ---|"290"| n1
n2 ---|"58"| n0
classDef default fill:#00b2ee,stroke:#ffffff,color:#000000;
classDef highlighted fill:#00b2ee,stroke:#ffffff,color:#000000;
linkStyle 0 stroke:#DC143CFF,stroke-width:10px
linkStyle 1 stroke:#DC143CED,stroke-width:9px
linkStyle 2 stroke:#DC143C5E,stroke-width:1px
Show more details on duplication between components...
| From Component --> To Component |
Duplicated Lines |
File Pairs | Details |
|---|---|---|---|
| buffa-descriptor (1%)   --> buffa-types (3%) |
302 | 10 file pairs | details... |
| benchmarks (4%)   --> buffa-types (2%) |
290 | 9 file pairs | details... |
| benchmarks (<1%)   --> buffa-descriptor (<1%) |
58 | 1 file pair | details... |
Longest Duplicates
The list of 50 longest duplicates.
| Size | # | Folders | Files | Lines | Code |
|---|---|---|---|---|---|
| 34 | x 2 | buffa-codegen/srcbuffa-codegen/src | 845:880 (4%)2031:2066 (1%) | view | |
| 32 | x 2 | buffa-types/protos/google/protobufbuffa-types/protos/google/protobuf | 1:35 (36%)1:35 (23%) | view | |
| 32 | x 2 | buffa-types/protos/google/protobufbuffa-types/protos/google/protobuf | 1:35 (29%)1:35 (23%) | view | |
| 32 | x 2 | buffa-types/protos/google/protobufbuffa-types/protos/google/protobuf | 1:35 (29%)1:35 (36%) | view | |
| 32 | x 2 | buffa-types/protos/google/protobufbuffa-types/protos/google/protobuf | 1:35 (13%)1:35 (72%) | view | |
| 31 | x 2 | buffa-types/protos/google/protobufbuffa-types/protos/google/protobuf | 1:33 (70%)1:33 (22%) | view | |
| 31 | x 2 | buffa-types/protos/google/protobufbuffa-types/protos/google/protobuf | 1:33 (14%)1:33 (28%) | view | |
| 31 | x 2 | buffa-types/protos/google/protobufbuffa-types/protos/google/protobuf | 1:33 (35%)1:33 (15%) | view | |
| 31 | x 2 | buffa-types/protos/google/protobufbuffa-types/protos/google/protobuf | 1:33 (19%)1:33 (28%) | view | |
| 31 | x 2 | buffa-types/protos/google/protobufbuffa-types/protos/google/protobuf | 1:33 (70%)1:33 (15%) | view | |
| 31 | x 2 | buffa-types/protos/google/protobufbuffa-types/protos/google/protobuf | 1:33 (22%)1:33 (15%) | view | |
| 31 | x 2 | buffa-types/protos/google/protobufbuffa-types/protos/google/protobuf | 1:33 (19%)1:33 (14%) | view | |
| 31 | x 2 | buffa-types/protos/google/protobufbuffa-types/protos/google/protobuf | 1:33 (70%)1:33 (35%) | view | |
| 31 | x 2 | buffa-types/protos/google/protobufbuffa-types/protos/google/protobuf | 1:33 (19%)1:33 (35%) | view | |
| 31 | x 2 | buffa-types/protos/google/protobufbuffa-types/protos/google/protobuf | 1:33 (14%)1:33 (70%) | view | |
| 31 | x 2 | buffa-types/protos/google/protobufbuffa-types/protos/google/protobuf | proto |
1:33 (19%)1:33 (15%) | view |
| 31 | x 2 | buffa-types/protos/google/protobufbuffa-types/protos/google/protobuf | 1:33 (14%)1:33 (22%) | view | |
| 31 | x 2 | buffa-types/protos/google/protobufbuffa-types/protos/google/protobuf | 1:33 (28%)1:33 (70%) | view | |
| 31 | x 2 | buffa-types/protos/google/protobufbuffa-types/protos/google/protobuf | 1:33 (19%)1:33 (22%) | view | |
| 31 | x 2 | buffa-types/protos/google/protobufbuffa-types/protos/google/protobuf | proto |
1:33 (14%)1:33 (15%) | view |
| 31 | x 2 | buffa-types/protos/google/protobufbuffa-types/protos/google/protobuf | 1:33 (19%)1:33 (70%) | view | |
| 31 | x 2 | buffa-types/protos/google/protobufbuffa-types/protos/google/protobuf | 1:33 (14%)1:33 (35%) | view | |
| 31 | x 2 | buffa-types/protos/google/protobufbuffa-types/protos/google/protobuf | 1:33 (28%)1:33 (15%) | view | |
| 31 | x 2 | buffa-types/protos/google/protobufbuffa-types/protos/google/protobuf | 1:33 (14%)1:33 (12%) | view | |
| 31 | x 2 | buffa-types/protos/google/protobufbuffa-types/protos/google/protobuf | 1:33 (28%)1:33 (12%) | view | |
| 31 | x 2 | buffa-types/protos/google/protobufbuffa-types/protos/google/protobuf | 1:33 (19%)1:33 (12%) | view | |
| 31 | x 2 | buffa-types/protos/google/protobufbuffa-types/protos/google/protobuf | 1:33 (12%)1:33 (22%) | view | |
| 31 | x 2 | buffa-types/protos/google/protobufbuffa-types/protos/google/protobuf | 1:33 (12%)1:33 (15%) | view | |
| 31 | x 2 | buffa-types/protos/google/protobufbuffa-types/protos/google/protobuf | 1:33 (12%)1:33 (35%) | view | |
| 29 | x 2 | benchmarks/protobuffa-types/protos/google/protobuf | 1:29 (28%)1:29 (18%) | view | |
| 29 | x 2 | buffa-descriptor/protos/google/protobufbuffa-types/protos/google/protobuf | 1:29 (2%)1:29 (26%) | view | |
| 29 | x 2 | benchmarks/protobuffa-types/protos/google/protobuf | 1:29 (28%)1:29 (14%) | view | |
| 29 | x 2 | buffa-descriptor/protos/google/protobufbuffa-types/protos/google/protobuf | 1:29 (2%)1:29 (12%) | view | |
| 29 | x 2 | benchmarks/protobuffa-types/protos/google/protobuf | 1:29 (28%)1:29 (26%) | view | |
| 29 | x 2 | buffa-types/protos/google/protobufbuffa-types/protos/google/protobuf | 1:29 (12%)1:29 (26%) | view | |
| 29 | x 2 | benchmarks/protobuffa-types/protos/google/protobuf | 1:29 (28%)1:29 (14%) | view | |
| 29 | x 2 | benchmarks/protobuffa-types/protos/google/protobuf | 1:29 (28%)1:29 (32%) | view | |
| 29 | x 2 | benchmarks/protobuffa-types/protos/google/protobuf | 1:29 (28%)1:29 (65%) | view | |
| 29 | x 2 | benchmarks/protobuffa-types/protos/google/protobuf | 1:29 (28%)1:29 (20%) | view | |
| 29 | x 2 | benchmarks/protobuffa-descriptor/protos/google/protobuf | 1:29 (28%)1:29 (2%) | view | |
| 29 | x 2 | buffa-types/protos/google/protobufbuffa-types/protos/google/protobuf | 1:29 (18%)1:29 (26%) | view | |
| 29 | x 2 | benchmarks/protobuffa-types/protos/google/protobuf | 1:29 (28%)1:29 (26%) | view | |
| 29 | x 2 | buffa-descriptor/protos/google/protobufbuffa-types/protos/google/protobuf | 1:29 (2%)1:29 (18%) | view | |
| 29 | x 2 | benchmarks/protobuffa-types/protos/google/protobuf | 1:29 (28%)1:29 (12%) | view | |
| 29 | x 2 | buffa-descriptor/protos/google/protobufbuffa-types/protos/google/protobuf | 1:29 (2%)1:29 (14%) | view | |
| 29 | x 2 | buffa-types/protos/google/protobufbuffa-types/protos/google/protobuf | 1:29 (26%)1:29 (26%) | view | |
| 29 | x 2 | buffa-types/protos/google/protobufbuffa-types/protos/google/protobuf | 1:29 (14%)1:29 (26%) | view | |
| 29 | x 2 | buffa-descriptor/protos/google/protobufbuffa-types/protos/google/protobuf | 1:29 (2%)1:29 (26%) | view | |
| 29 | x 2 | buffa-descriptor/protos/google/protobufbuffa-types/protos/google/protobuf | 1:29 (2%)1:29 (14%) | view | |
| 29 | x 2 | buffa-types/protos/google/protobufbuffa-types/protos/google/protobuf | 1:29 (32%)1:29 (26%) | view |
Most Frequent Duplicates
The list of 50 most frequently found duplicates.
| Size | # | Folders | Files | Lines | Code |
|---|---|---|---|---|---|
| 6 | x 22 | buffa-test/srcbuffa-test/srcbuffa-test/srcbuffa-test/srcbuffa-test/srcbuffa-test/srcbuffa-test/srcbuffa-test/srcbuffa-test/srcbuffa-test/src... | 548:553 (<1%)668:673 (<1%)684:689 (<1%)762:767 (<1%)772:777 (<1%)796:801 (<1%)806:811 (<1%)845:850 (<1%)855:860 (<1%)880:885 (<1%)... | view | |
| 6 | x 11 | benchmarks/protobuffa-types/protos/google/protobufbuffa-types/protos/google/protobufbuffa-types/protos/google/protobufbuffa-types/protos/google/protobufbuffa-types/protos/google/protobufbuffa-types/protos/google/protobufbuffa-types/protos/google/protobufbuffa-descriptor/protos/google/protobufbuffa-types/protos/google/protobuf... | 5:10 (5%)5:10 (3%)5:10 (2%)5:10 (5%)5:10 (2%)5:10 (6%)5:10 (13%)5:10 (4%)5:10 (<1%)5:10 (5%)... | view | |
| 6 | x 11 | benchmarks/protobuffa-types/protos/google/protobufbuffa-types/protos/google/protobufbuffa-types/protos/google/protobufbuffa-types/protos/google/protobufbuffa-types/protos/google/protobufbuffa-types/protos/google/protobufbuffa-types/protos/google/protobufbuffa-descriptor/protos/google/protobufbuffa-types/protos/google/protobuf... | 6:11 (5%)6:11 (3%)6:11 (2%)6:11 (5%)6:11 (2%)6:11 (6%)6:11 (13%)6:11 (4%)6:11 (<1%)6:11 (5%)... | view | |
| 6 | x 11 | benchmarks/protobuffa-types/protos/google/protobufbuffa-types/protos/google/protobufbuffa-types/protos/google/protobufbuffa-types/protos/google/protobufbuffa-types/protos/google/protobufbuffa-types/protos/google/protobufbuffa-types/protos/google/protobufbuffa-descriptor/protos/google/protobufbuffa-types/protos/google/protobuf... | 15:20 (5%)15:20 (3%)15:20 (2%)15:20 (5%)15:20 (2%)15:20 (6%)15:20 (13%)15:20 (4%)15:20 (<1%)15:20 (5%)... | view | |
| 6 | x 11 | benchmarks/protobuffa-types/protos/google/protobufbuffa-types/protos/google/protobufbuffa-types/protos/google/protobufbuffa-types/protos/google/protobufbuffa-types/protos/google/protobufbuffa-types/protos/google/protobufbuffa-types/protos/google/protobufbuffa-descriptor/protos/google/protobufbuffa-types/protos/google/protobuf... | 8:13 (5%)8:13 (3%)8:13 (2%)8:13 (5%)8:13 (2%)8:13 (6%)8:13 (13%)8:13 (4%)8:13 (<1%)8:13 (5%)... | view | |
| 6 | x 11 | benchmarks/protobuffa-types/protos/google/protobufbuffa-types/protos/google/protobufbuffa-types/protos/google/protobufbuffa-types/protos/google/protobufbuffa-types/protos/google/protobufbuffa-types/protos/google/protobufbuffa-types/protos/google/protobufbuffa-descriptor/protos/google/protobufbuffa-types/protos/google/protobuf... | 21:26 (5%)21:26 (3%)21:26 (5%)21:26 (2%)21:26 (6%)21:26 (2%)21:26 (13%)21:26 (4%)21:26 (<1%)21:26 (5%)... | view | |
| 6 | x 11 | benchmarks/protobuffa-types/protos/google/protobufbuffa-types/protos/google/protobufbuffa-types/protos/google/protobufbuffa-types/protos/google/protobufbuffa-types/protos/google/protobufbuffa-types/protos/google/protobufbuffa-types/protos/google/protobufbuffa-descriptor/protos/google/protobufbuffa-types/protos/google/protobuf... | 14:19 (5%)14:19 (3%)14:19 (2%)14:19 (5%)14:19 (2%)14:19 (6%)14:19 (13%)14:19 (4%)14:19 (<1%)14:19 (5%)... | view | |
| 6 | x 11 | benchmarks/protobuffa-types/protos/google/protobufbuffa-types/protos/google/protobufbuffa-types/protos/google/protobufbuffa-types/protos/google/protobufbuffa-types/protos/google/protobufbuffa-types/protos/google/protobufbuffa-types/protos/google/protobufbuffa-descriptor/protos/google/protobufbuffa-types/protos/google/protobuf... | 23:28 (5%)23:28 (3%)23:28 (5%)23:28 (2%)23:28 (6%)23:28 (2%)23:28 (13%)23:28 (4%)23:28 (<1%)23:28 (5%)... | view | |
| 6 | x 11 | benchmarks/protobuffa-types/protos/google/protobufbuffa-types/protos/google/protobufbuffa-types/protos/google/protobufbuffa-types/protos/google/protobufbuffa-types/protos/google/protobufbuffa-types/protos/google/protobufbuffa-descriptor/protos/google/protobufbuffa-types/protos/google/protobufbuffa-types/protos/google/protobuf... | 2:7 (5%)2:7 (3%)2:7 (2%)2:7 (5%)2:7 (2%)2:7 (6%)2:7 (13%)2:7 (<1%)2:7 (5%)2:7 (4%)... | view | |
| 6 | x 11 | benchmarks/protobuffa-types/protos/google/protobufbuffa-types/protos/google/protobufbuffa-types/protos/google/protobufbuffa-types/protos/google/protobufbuffa-types/protos/google/protobufbuffa-types/protos/google/protobufbuffa-types/protos/google/protobufbuffa-descriptor/protos/google/protobufbuffa-types/protos/google/protobuf... | 10:15 (5%)10:15 (3%)10:15 (2%)10:15 (5%)10:15 (2%)10:15 (6%)10:15 (13%)10:15 (4%)10:15 (<1%)10:15 (5%)... | view | |
| 6 | x 11 | benchmarks/protobuffa-types/protos/google/protobufbuffa-types/protos/google/protobufbuffa-types/protos/google/protobufbuffa-types/protos/google/protobufbuffa-types/protos/google/protobufbuffa-types/protos/google/protobufbuffa-types/protos/google/protobufbuffa-descriptor/protos/google/protobufbuffa-types/protos/google/protobuf... | 17:22 (5%)17:22 (3%)17:22 (2%)17:22 (5%)17:22 (2%)17:22 (6%)17:22 (13%)17:22 (4%)17:22 (<1%)17:22 (5%)... | view | |
| 6 | x 11 | benchmarks/protobuffa-types/protos/google/protobufbuffa-types/protos/google/protobufbuffa-types/protos/google/protobufbuffa-types/protos/google/protobufbuffa-types/protos/google/protobufbuffa-types/protos/google/protobufbuffa-types/protos/google/protobufbuffa-descriptor/protos/google/protobufbuffa-types/protos/google/protobuf... | 12:17 (5%)12:17 (3%)12:17 (2%)12:17 (5%)12:17 (2%)12:17 (6%)12:17 (13%)12:17 (4%)12:17 (<1%)12:17 (5%)... | view | |
| 6 | x 11 | benchmarks/protobuffa-types/protos/google/protobufbuffa-types/protos/google/protobufbuffa-types/protos/google/protobufbuffa-types/protos/google/protobufbuffa-types/protos/google/protobufbuffa-types/protos/google/protobufbuffa-types/protos/google/protobufbuffa-descriptor/protos/google/protobufbuffa-types/protos/google/protobuf... | 13:18 (5%)13:18 (3%)13:18 (2%)13:18 (5%)13:18 (2%)13:18 (6%)13:18 (13%)13:18 (4%)13:18 (<1%)13:18 (5%)... | view | |
| 6 | x 11 | benchmarks/protobuffa-types/protos/google/protobufbuffa-types/protos/google/protobufbuffa-types/protos/google/protobufbuffa-types/protos/google/protobufbuffa-types/protos/google/protobufbuffa-types/protos/google/protobufbuffa-types/protos/google/protobufbuffa-descriptor/protos/google/protobufbuffa-types/protos/google/protobuf... | 4:9 (5%)4:9 (3%)4:9 (2%)4:9 (5%)4:9 (2%)4:9 (6%)4:9 (13%)4:9 (4%)4:9 (<1%)4:9 (5%)... | view | |
| 6 | x 11 | benchmarks/protobuffa-types/protos/google/protobufbuffa-types/protos/google/protobufbuffa-types/protos/google/protobufbuffa-types/protos/google/protobufbuffa-types/protos/google/protobufbuffa-types/protos/google/protobufbuffa-types/protos/google/protobufbuffa-descriptor/protos/google/protobufbuffa-types/protos/google/protobuf... | 16:21 (5%)16:21 (3%)16:21 (2%)16:21 (5%)16:21 (2%)16:21 (6%)16:21 (13%)16:21 (4%)16:21 (<1%)16:21 (5%)... | view | |
| 6 | x 11 | benchmarks/protobuffa-types/protos/google/protobufbuffa-types/protos/google/protobufbuffa-types/protos/google/protobufbuffa-types/protos/google/protobufbuffa-types/protos/google/protobufbuffa-types/protos/google/protobufbuffa-types/protos/google/protobufbuffa-descriptor/protos/google/protobufbuffa-types/protos/google/protobuf... | 9:14 (5%)9:14 (3%)9:14 (2%)9:14 (5%)9:14 (2%)9:14 (6%)9:14 (13%)9:14 (4%)9:14 (<1%)9:14 (5%)... | view | |
| 6 | x 11 | benchmarks/protobuffa-types/protos/google/protobufbuffa-types/protos/google/protobufbuffa-types/protos/google/protobufbuffa-types/protos/google/protobufbuffa-types/protos/google/protobufbuffa-types/protos/google/protobufbuffa-types/protos/google/protobufbuffa-descriptor/protos/google/protobufbuffa-types/protos/google/protobuf... | 22:27 (5%)22:27 (3%)22:27 (5%)22:27 (2%)22:27 (6%)22:27 (2%)22:27 (13%)22:27 (4%)22:27 (<1%)22:27 (5%)... | view | |
| 6 | x 11 | benchmarks/protobuffa-types/protos/google/protobufbuffa-types/protos/google/protobufbuffa-types/protos/google/protobufbuffa-types/protos/google/protobufbuffa-types/protos/google/protobufbuffa-types/protos/google/protobufbuffa-descriptor/protos/google/protobufbuffa-types/protos/google/protobufbuffa-types/protos/google/protobuf... | 1:6 (5%)1:6 (3%)1:6 (2%)1:6 (5%)1:6 (2%)1:6 (6%)1:6 (13%)1:6 (<1%)1:6 (5%)1:6 (4%)... | view | |
| 6 | x 11 | benchmarks/protobuffa-types/protos/google/protobufbuffa-types/protos/google/protobufbuffa-types/protos/google/protobufbuffa-types/protos/google/protobufbuffa-types/protos/google/protobufbuffa-types/protos/google/protobufbuffa-types/protos/google/protobufbuffa-descriptor/protos/google/protobufbuffa-types/protos/google/protobuf... | 24:29 (5%)24:29 (3%)24:29 (5%)24:29 (2%)24:29 (6%)24:29 (2%)24:29 (13%)24:29 (4%)24:29 (<1%)24:29 (5%)... | view | |
| 6 | x 11 | benchmarks/protobuffa-types/protos/google/protobufbuffa-types/protos/google/protobufbuffa-types/protos/google/protobufbuffa-types/protos/google/protobufbuffa-types/protos/google/protobufbuffa-types/protos/google/protobufbuffa-types/protos/google/protobufbuffa-descriptor/protos/google/protobufbuffa-types/protos/google/protobuf... | 20:25 (5%)20:25 (3%)20:25 (5%)20:25 (2%)20:25 (6%)20:25 (2%)20:25 (13%)20:25 (4%)20:25 (<1%)20:25 (5%)... | view | |
| 6 | x 11 | benchmarks/protobuffa-types/protos/google/protobufbuffa-types/protos/google/protobufbuffa-types/protos/google/protobufbuffa-types/protos/google/protobufbuffa-types/protos/google/protobufbuffa-types/protos/google/protobufbuffa-descriptor/protos/google/protobufbuffa-types/protos/google/protobufbuffa-types/protos/google/protobuf... | 3:8 (5%)3:8 (3%)3:8 (2%)3:8 (5%)3:8 (2%)3:8 (6%)3:8 (13%)3:8 (<1%)3:8 (4%)3:8 (5%)... | view | |
| 6 | x 11 | benchmarks/protobuffa-types/protos/google/protobufbuffa-types/protos/google/protobufbuffa-types/protos/google/protobufbuffa-types/protos/google/protobufbuffa-types/protos/google/protobufbuffa-types/protos/google/protobufbuffa-types/protos/google/protobufbuffa-descriptor/protos/google/protobufbuffa-types/protos/google/protobuf... | 18:23 (5%)18:23 (3%)18:23 (5%)18:23 (2%)18:23 (6%)18:23 (2%)18:23 (13%)18:23 (4%)18:23 (<1%)18:23 (5%)... | view | |
| 6 | x 11 | benchmarks/protobuffa-types/protos/google/protobufbuffa-types/protos/google/protobufbuffa-types/protos/google/protobufbuffa-types/protos/google/protobufbuffa-types/protos/google/protobufbuffa-types/protos/google/protobufbuffa-types/protos/google/protobufbuffa-descriptor/protos/google/protobufbuffa-types/protos/google/protobuf... | 11:16 (5%)11:16 (3%)11:16 (2%)11:16 (5%)11:16 (2%)11:16 (6%)11:16 (13%)11:16 (4%)11:16 (<1%)11:16 (5%)... | view | |
| 6 | x 11 | benchmarks/protobuffa-types/protos/google/protobufbuffa-types/protos/google/protobufbuffa-types/protos/google/protobufbuffa-types/protos/google/protobufbuffa-types/protos/google/protobufbuffa-types/protos/google/protobufbuffa-types/protos/google/protobufbuffa-descriptor/protos/google/protobufbuffa-types/protos/google/protobuf... | 19:24 (5%)19:24 (3%)19:24 (5%)19:24 (2%)19:24 (6%)19:24 (2%)19:24 (13%)19:24 (4%)19:24 (<1%)19:24 (5%)... | view | |
| 6 | x 11 | benchmarks/protobuffa-types/protos/google/protobufbuffa-types/protos/google/protobufbuffa-types/protos/google/protobufbuffa-types/protos/google/protobufbuffa-types/protos/google/protobufbuffa-types/protos/google/protobufbuffa-types/protos/google/protobufbuffa-descriptor/protos/google/protobufbuffa-types/protos/google/protobuf... | 7:12 (5%)7:12 (3%)7:12 (2%)7:12 (5%)7:12 (2%)7:12 (6%)7:12 (13%)7:12 (4%)7:12 (<1%)7:12 (5%)... | view | |
| 6 | x 9 | buffa-codegen/srcbuffa-codegen/srcbuffa-codegen/srcbuffa-codegen/srcbuffa-codegen/srcbuffa-codegen/srcbuffa-codegen/srcbuffa-codegen/srcbuffa-codegen/src | 1588:1593 (<1%)1430:1435 (<1%)1743:1748 (<1%)1969:1974 (<1%)2212:2217 (<1%)2310:2315 (<1%)2389:2394 (<1%)2920:2925 (<1%)1543:1548 (<1%) | view | |
| 6 | x 8 | buffa-types/protos/google/protobufbuffa-types/protos/google/protobufbuffa-types/protos/google/protobufbuffa-types/protos/google/protobufbuffa-types/protos/google/protobufbuffa-types/protos/google/protobufbuffa-types/protos/google/protobufbuffa-types/protos/google/protobuf | 25:31 (5%)25:31 (2%)25:31 (3%)25:31 (6%)25:31 (2%)25:31 (4%)25:31 (13%)25:31 (2%) | view | |
| 6 | x 8 | buffa-types/protos/google/protobufbuffa-types/protos/google/protobufbuffa-types/protos/google/protobufbuffa-types/protos/google/protobufbuffa-types/protos/google/protobufbuffa-types/protos/google/protobufbuffa-types/protos/google/protobufbuffa-types/protos/google/protobuf | 26:33 (5%)26:33 (2%)26:33 (3%)26:33 (6%)26:33 (2%)26:33 (4%)26:33 (13%)26:33 (2%) | view | |
| 6 | x 6 | buffa/srcbuffa/srcbuffa/srcbuffa/srcbuffa/srcbuffa/src | 4102:4107 (<1%)4250:4255 (<1%)4477:4482 (<1%)4569:4574 (<1%)4889:4894 (<1%)4933:4938 (<1%) | view | |
| 6 | x 6 | buffa-codegen/srcbuffa-codegen/srcbuffa-codegen/srcbuffa-codegen/srcbuffa-codegen/srcbuffa-codegen/src | 692:697 (<1%)1391:1396 (<1%)2034:2039 (<1%)2367:2372 (<1%)848:853 (<1%)949:954 (<1%) | view | |
| 6 | x 6 | buffa-codegen/srcbuffa-codegen/srcbuffa-codegen/srcbuffa-codegen/srcbuffa-codegen/srcbuffa-codegen/src | 1589:1594 (<1%)1431:1436 (<1%)1744:1749 (<1%)2213:2218 (<1%)2311:2316 (<1%)1544:1549 (<1%) | view | |
| 6 | x 6 | buffa-codegen/srcbuffa-codegen/srcbuffa-codegen/srcbuffa-codegen/srcbuffa-codegen/srcbuffa-codegen/src | 1587:1592 (<1%)1742:1747 (<1%)2211:2216 (<1%)2309:2314 (<1%)3214:3219 (<1%)3282:3287 (<1%) | view | |
| 6 | x 6 | buffa-codegen/srcbuffa-codegen/srcbuffa-codegen/srcbuffa-codegen/srcbuffa-codegen/srcbuffa-codegen/src | 690:695 (<1%)1389:1394 (<1%)2032:2037 (<1%)2365:2370 (<1%)846:851 (<1%)947:952 (<1%) | view | |
| 6 | x 6 | buffa-codegen/srcbuffa-codegen/srcbuffa-codegen/srcbuffa-codegen/srcbuffa-codegen/srcbuffa-codegen/src | 689:694 (<1%)1388:1393 (<1%)2031:2036 (<1%)2364:2369 (<1%)845:850 (<1%)946:951 (<1%) | view | |
| 6 | x 6 | buffa/srcbuffa/srcbuffa/srcbuffa/srcbuffa/srcbuffa/src | 4100:4105 (<1%)4248:4253 (<1%)4475:4480 (<1%)4567:4572 (<1%)4887:4892 (<1%)4931:4936 (<1%) | view | |
| 6 | x 6 | buffa-codegen/srcbuffa-codegen/srcbuffa-codegen/srcbuffa-codegen/srcbuffa-codegen/srcbuffa-codegen/src | 691:696 (<1%)1390:1395 (<1%)2033:2038 (<1%)2366:2371 (<1%)847:852 (<1%)948:953 (<1%) | view | |
| 6 | x 6 | buffa/srcbuffa/srcbuffa/srcbuffa/srcbuffa/srcbuffa/src | 384:390 (<1%)457:463 (<1%)888:895 (<1%)1529:1535 (<1%)1587:1593 (<1%)1661:1667 (<1%) | view | |
| 6 | x 6 | buffa/srcbuffa/srcbuffa/srcbuffa/srcbuffa/srcbuffa/src | 4101:4106 (<1%)4249:4254 (<1%)4476:4481 (<1%)4568:4573 (<1%)4888:4893 (<1%)4932:4937 (<1%) | view | |
| 6 | x 6 | buffa-codegen/srcbuffa-codegen/srcbuffa-codegen/srcbuffa-codegen/srcbuffa-codegen/srcbuffa-codegen/src | 757:762 (<1%)810:815 (<1%)1422:1427 (<1%)1535:1540 (<1%)1827:1832 (<1%)2425:2430 (<1%) | view | |
| 6 | x 5 | buffa-codegen/srcbuffa-codegen/srcbuffa-codegen/srcbuffa-codegen/srcbuffa-codegen/src | 2799:2804 (<1%)2818:2823 (<1%)2871:2876 (<1%)2893:2899 (<1%)2923:2929 (<1%) | view | |
| 6 | x 5 | buffa/srcbuffa/srcbuffa/srcbuffa/srcbuffa/src | 504:510 (<1%)631:637 (<1%)690:696 (<1%)758:764 (<1%)800:806 (<1%) | view | |
| 6 | x 5 | benchmarks/buffa/srcbenchmarks/gen-datasets/srcbenchmarks/gen-datasets/srcbenchmarks/buffa/srcbenchmarks/buffa/src | 20:25 (3%)13:18 (14%)25:30 (14%)33:38 (3%)47:52 (3%) | view | |
| 6 | x 5 | benchmarks/buffa/srcbenchmarks/gen-datasets/srcbenchmarks/gen-datasets/srcbenchmarks/buffa/srcbenchmarks/buffa/src | 21:26 (3%)14:19 (14%)26:31 (14%)34:39 (3%)48:53 (3%) | view | |
| 6 | x 5 | buffa/srcbuffa/srcbuffa/srcbuffa/srcbuffa/src | 505:511 (<1%)632:638 (<1%)691:697 (<1%)759:765 (<1%)801:807 (<1%) | view | |
| 6 | x 5 | buffa-test/srcbuffa-test/srcbuffa-test/srcbuffa-test/srcbuffa-test/src | 987:998 (<1%)1004:1014 (<1%)1034:1044 (<1%)1050:1059 (<1%)1081:1088 (<1%) | view | |
| 6 | x 5 | benchmarks/buffa/srcbenchmarks/gen-datasets/srcbenchmarks/gen-datasets/srcbenchmarks/buffa/srcbenchmarks/buffa/src | 19:24 (3%)12:17 (14%)24:29 (14%)32:37 (3%)46:51 (3%) | view | |
| 6 | x 5 | benchmarks/buffa/benchesbenchmarks/buffa/benchesbenchmarks/buffa/benchesbenchmarks/buffa/benchesbenchmarks/buffa/benches | 11:19 (18%)11:16 (18%)11:16 (18%)11:16 (18%)11:16 (18%) | view | |
| 6 | x 5 | buffa-remote-derive/srcbuffa-remote-derive/srcbuffa-remote-derive/srcbuffa-remote-derive/srcbuffa-remote-derive/src | 11:16 (13%)11:16 (10%)11:16 (10%)11:16 (7%)12:17 (11%) | view | |
| 6 | x 5 | benchmarks/buffa/srcbenchmarks/gen-datasets/srcbenchmarks/gen-datasets/srcbenchmarks/buffa/srcbenchmarks/buffa/src | 18:23 (3%)11:16 (14%)23:28 (14%)31:36 (3%)45:50 (3%) | view | |
| 6 | x 5 | buffa-codegen/srcbuffa-codegen/srcbuffa-codegen/srcbuffa-codegen/srcbuffa-codegen/src | 166:171 (<1%)1009:1014 (<1%)957:962 (<1%)1052:1058 (<1%)2375:2380 (<1%) | view |
Duplicated Units
The list of top 4 duplicated units.
About This Analysis
- 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...
- To learn more about duplications and techniques for eliminating duplication, Sokrates recommends the following resources:
- Avoid Repetition, MartinFlower.com (IEEE Software article)
- Refactoring duplicated code, sourcemaking.com
- Beck Design Rules, MartinFowler.com
- DRY (Don't Repeat Yourself) Principle, Wikipedia
- The Cut-and-Paste Programming Software Development Anti-Pattern, sourcemaking.com
- Code Smells / Duplicated Code, Jeff Atwood, codinghorror.com:
- "Duplicated code is the bane of software development. Stamp out duplication whenever possible. You should always be on the lookout for more subtle cases of near-duplication, too. Don't Repeat Yourself!"
- Reducing Coupling, MartinFlower.com (IEEE Software article):
- "There are several ways to describe coupling, but it boils down to this: If changing one module in a program requires changing another module, then coupling exists. ... Duplication always implies coupling, because changing one piece of duplicate code implies changing the other."