awslabs / rust-smt-ir
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
  • 7% duplication:
    • 9,979 cleaned lines of cleaned code (without empty lines, comments, and frequently duplicated constructs such as imports)
    • 741 duplicated lines
  • 70 duplicates
system7% (741 lines)
Duplication per Extension
rs6% (617 lines)
toml44% (74 lines)
py6% (50 lines)
Duplication per Component (primary)
amzn-smt-ir/src10% (441 lines)
amzn-smt-string-transformer/src5% (144 lines)
amzn-smt-prediction/scripts7% (50 lines)
amzn-smt-eager-arithmetic/src1% (26 lines)
amzn-smt-eager-arithmetic43% (14 lines)
amzn-smt-ir37% (13 lines)
amzn-smt-ir-derive54% (12 lines)
amzn-smt-string-fct-updater70% (12 lines)
amzn-smt-string-transformer6% (12 lines)
amzn-smt-prediction55% (11 lines)
amzn-smt-string-fct-updater/src3% (6 lines)
amzn-smt-eager-arithmetic/benches0% (0 lines)
ROOT0% (0 lines)
amzn-smt-ir-derive/src0% (0 lines)
amzn-smt-prediction/src0% (0 lines)
amzn-smt-ir/benches0% (0 lines)
Longest Duplicates
The list of 20 longest duplicates.
See data for all 70 duplicates...
Size#FoldersFilesLinesCode
75 x 2 amzn-smt-ir/src/fold
amzn-smt-ir/src/fold
inter.rs
intra.rs
194:309 (42%)
235:350 (42%)
view
13 x 2 amzn-smt-eager-arithmetic
amzn-smt-ir
Cargo.toml
Cargo.toml
3:17 (40%)
3:17 (37%)
view
13 x 2 amzn-smt-ir/src/term
amzn-smt-ir/src/term
args.rs
args.rs
162:177 (7%)
208:223 (7%)
view
12 x 2 amzn-smt-string-transformer/src
amzn-smt-string-transformer/src
string_mappings.rs
transpiler.rs
428:439 (2%)
981:992 (1%)
view
12 x 2 amzn-smt-ir/src/term
amzn-smt-ir/src/term
args.rs
args.rs
164:177 (6%)
262:275 (6%)
view
12 x 2 amzn-smt-string-fct-updater
amzn-smt-string-transformer
Cargo.toml
Cargo.toml
7:19 (70%)
7:19 (57%)
view
12 x 2 amzn-smt-eager-arithmetic
amzn-smt-ir-derive
Cargo.toml
Cargo.toml
3:15 (37%)
3:15 (54%)
view
12 x 2 amzn-smt-ir/src/term
amzn-smt-ir/src/term
args.rs
args.rs
210:223 (6%)
262:275 (6%)
view
12 x 2 amzn-smt-ir-derive
amzn-smt-ir
Cargo.toml
Cargo.toml
3:15 (54%)
3:15 (34%)
view
11 x 2 amzn-smt-eager-arithmetic
amzn-smt-prediction
Cargo.toml
Cargo.toml
5:17 (34%)
5:17 (55%)
view
11 x 2 amzn-smt-eager-arithmetic
amzn-smt-string-fct-updater
Cargo.toml
Cargo.toml
7:18 (34%)
7:18 (64%)
view
11 x 2 amzn-smt-ir
amzn-smt-prediction
Cargo.toml
Cargo.toml
5:17 (31%)
5:17 (55%)
view
11 x 2 amzn-smt-eager-arithmetic
amzn-smt-string-transformer
Cargo.toml
Cargo.toml
7:18 (34%)
7:18 (52%)
view
10 x 2 amzn-smt-prediction
amzn-smt-string-fct-updater
Cargo.toml
Cargo.toml
7:17 (50%)
7:17 (58%)
view
10 x 2 amzn-smt-ir/src
amzn-smt-ir/src/fold
fold.rs
inter.rs
241:254 (2%)
159:172 (5%)
view
10 x 2 amzn-smt-ir
amzn-smt-string-fct-updater
Cargo.toml
Cargo.toml
7:17 (28%)
7:17 (58%)
view
10 x 2 amzn-smt-ir-derive
amzn-smt-prediction
Cargo.toml
Cargo.toml
5:15 (45%)
5:15 (50%)
view
10 x 2 amzn-smt-prediction
amzn-smt-string-transformer
Cargo.toml
Cargo.toml
7:17 (50%)
7:17 (47%)
view
10 x 2 amzn-smt-ir
amzn-smt-string-transformer
Cargo.toml
Cargo.toml
7:17 (28%)
7:17 (47%)
view
10 x 2 amzn-smt-ir/src
amzn-smt-ir/src/fold
fold.rs
intra.rs
241:254 (2%)
203:216 (5%)
view
Duplicated Units
The list of top 16 duplicated units.
See data for all 16 unit duplicates...
Size#FoldersFilesLinesCode
14 x 2 amzn-smt-ir/src/term
amzn-smt-ir/src/term
args.rs
args.rs
164:178 
210:224 
view
11 x 2 amzn-smt-ir/src/fold
amzn-smt-ir/src/fold
intra.rs
inter.rs
152:163 
108:119 
view
11 x 2 amzn-smt-ir/src/fold
amzn-smt-ir/src/fold
intra.rs
inter.rs
212:223 
168:179 
view
9 x 2 amzn-smt-ir/src/fold
amzn-smt-ir/src/fold
intra.rs
inter.rs
199:208 
155:164 
view
7 x 2 amzn-smt-ir/src/fold
amzn-smt-ir/src/fold
intra.rs
inter.rs
177:184 
133:140 
view
7 x 2 amzn-smt-ir/src/fold
amzn-smt-ir/src/fold
intra.rs
inter.rs
188:195 
144:151 
view
7 x 2 amzn-smt-ir/src/fold
amzn-smt-ir/src/fold
intra.rs
inter.rs
297:304 
256:263 
view
7 x 2 amzn-smt-ir/src/fold
amzn-smt-ir/src/fold
intra.rs
inter.rs
337:344 
296:303 
view
6 x 4 amzn-smt-ir/src/fold
amzn-smt-ir/src/fold
amzn-smt-ir/src
amzn-smt-ir/src
intra.rs
inter.rs
fold.rs
visit.rs
65:71 
33:39 
127:133 
111:117 
view
6 x 2 amzn-smt-ir/src/fold
amzn-smt-ir/src/fold
intra.rs
inter.rs
142:148 
98:104 
view
6 x 2 amzn-smt-ir/src/fold
amzn-smt-ir/src/fold
intra.rs
inter.rs
167:173 
123:129 
view
6 x 2 amzn-smt-ir/src/fold
amzn-smt-ir/src/fold
intra.rs
inter.rs
289:295 
248:254 
view
6 x 2 amzn-smt-ir/src/fold
amzn-smt-ir/src/fold
intra.rs
inter.rs
306:312 
265:271 
view
6 x 2 amzn-smt-ir/src/fold
amzn-smt-ir/src/fold
intra.rs
inter.rs
314:320 
273:279 
view
6 x 2 amzn-smt-ir/src/fold
amzn-smt-ir/src/fold
intra.rs
inter.rs
322:328 
281:287 
view
6 x 2 amzn-smt-ir/src/term
amzn-smt-ir/src/term
args.rs
args.rs
76:82 
103:109 
view