firebase / scrypt
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
  • 4% duplication:
    • 2,132 cleaned lines of cleaned code (without empty lines, comments, and frequently duplicated constructs such as imports)
    • 104 duplicated lines
  • 6 duplicates
system4% (104 lines)
Duplication per Extension
c5% (104 lines)
Duplication per Component (primary)
lib/crypto11% (52 lines)
lib/scryptenc9% (14 lines)
libcperciva/cpusupport21% (14 lines)
lib/util9% (12 lines)
libcperciva/util2% (12 lines)
ROOT0% (0 lines)
libcperciva/crypto0% (0 lines)
libcperciva/cpusupport/Build0% (0 lines)
libcperciva/alg0% (0 lines)
Longest Duplicates
The list of 6 longest duplicates.
See data for all 6 duplicates...
Size#FoldersFilesLinesCode
18 x 2 lib/crypto
lib/crypto
crypto_scrypt-ref.c
crypto_scrypt_smix.c
84:115 (14%)
76:105 (21%)
view
8 x 2 lib/crypto
lib/crypto
crypto_scrypt-ref.c
crypto_scrypt.c
223:235 (6%)
64:76 (6%)
view
7 x 2 libcperciva/cpusupport
libcperciva/cpusupport
cpusupport_x86_aesni.c
cpusupport_x86_sse2.c
12:22 (63%)
12:22 (63%)
view
7 x 2 lib/scryptenc
lib/scryptenc
scryptenc.c
scryptenc.c
99:106 (9%)
154:161 (9%)
view
6 x 2 lib/util
lib/util
memlimit.c
memlimit.c
138:147 (4%)
235:244 (4%)
view
6 x 2 libcperciva/util
libcperciva/util
warnp.c
warnp.c
51:57 (16%)
66:72 (16%)
view