firebase / geofire-objc
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
  • 13% duplication:
    • 1,835 cleaned lines of cleaned code (without empty lines, comments, and frequently duplicated constructs such as imports)
    • 241 duplicated lines
  • 29 duplicates
system13% (241 lines)
Duplication per Extension
m14% (241 lines)
Duplication per Component (primary)
GeoFireTests14% (116 lines)
GeoFire/Implementation19% (107 lines)
GeoFire/Utils5% (18 lines)
GeoFire/API0% (0 lines)
site0% (0 lines)
GeoFire-framework0% (0 lines)
ROOT0% (0 lines)
GeoFire-frameworkTests0% (0 lines)
Longest Duplicates
The list of 20 longest duplicates.
See data for all 29 duplicates...
Size#FoldersFilesLinesCode
11 x 2 GeoFireTests
GeoFireTests
GFGeoHashQueryTest.m
GFGeoHashQueryTest.m
117:127 (7%)
151:161 (7%)
view
9 x 2 GeoFire/Utils
GeoFire/Utils
GFGeoHashQuery.m
GFGeoQueryBounds.m
276:292 (5%)
60:76 (32%)
view
9 x 2 GeoFire/Implementation
GeoFire/Implementation
GFQuery.m
GFQuery.m
543:555 (2%)
593:605 (2%)
view
8 x 2 GeoFireTests
GeoFireTests
GFQueryTest.m
GFQueryTest.m
36:45 (1%)
67:74 (1%)
view
8 x 2 GeoFire/Implementation
GeoFire/Implementation
GFQuery.m
GFQuery.m
520:527 (1%)
570:577 (1%)
view
8 x 2 GeoFire/Implementation
GeoFire/Implementation
GFQuery.m
GFQuery.m
396:404 (1%)
451:459 (1%)
view
8 x 2 GeoFireTests
GeoFireTests
GFQueryTest.m
GFQueryTest.m
279:286 (1%)
422:429 (1%)
view
7 x 2 GeoFire/Implementation
GeoFire/Implementation
GFQuery.m
GFQuery.m
511:518 (1%)
561:568 (1%)
view
7 x 2 GeoFireTests
GeoFireTests
GFQueryTest.m
GFQueryTest.m
434:440 (1%)
456:463 (1%)
view
6 x 2 GeoFireTests
GeoFireTests
GFQueryTest.m
GFQueryTest.m
337:342 (1%)
391:396 (1%)
view
6 x 2 GeoFireTests
GeoFireTests
GFQueryTest.m
GFQueryTest.m
198:203 (1%)
337:342 (1%)
view
6 x 2 GeoFireTests
GeoFireTests
GeoFireTest.m
GeoFireTest.m
126:132 (5%)
134:140 (5%)
view
6 x 2 GeoFireTests
GeoFireTests
GFQueryTest.m
GFQueryTest.m
265:270 (1%)
337:342 (1%)
view
6 x 2 GeoFireTests
GeoFireTests
GFQueryTest.m
GFQueryTest.m
198:203 (1%)
233:238 (1%)
view
6 x 2 GeoFire/Implementation
GeoFire/Implementation
GFQuery.m
GFQuery.m
273:278 (1%)
342:347 (1%)
view
6 x 2 GeoFireTests
GeoFireTests
GFQueryTest.m
GFQueryTest.m
233:238 (1%)
265:270 (1%)
view
6 x 2 GeoFire/Implementation
GeoFire/Implementation
GFQuery.m
GFQuery.m
239:244 (1%)
269:274 (1%)
view
6 x 2 GeoFire/Implementation
GeoFire/Implementation
GFQuery.m
GFQuery.m
261:266 (1%)
276:281 (1%)
view
6 x 2 GeoFireTests
GeoFireTests
GFQueryTest.m
GFQueryTest.m
233:238 (1%)
391:396 (1%)
view
6 x 2 GeoFire/Implementation
GeoFire/Implementation
GFQuery.m
GFQuery.m
246:251 (1%)
261:266 (1%)
view