Global Metrics

path: .metrics.halstead.length
old: 266.0
new: 524.0

path: .metrics.halstead.volume
old: 1601.9498382655688
new: 3082.504957865605

path: .metrics.halstead.bugs
old: 0.3583107250549919
new: 1.048090134535761

path: .metrics.halstead.N1
old: 167.0
new: 317.0

path: .metrics.halstead.difficulty
old: 22.0
new: 57.19736842105263

path: .metrics.halstead.n2
old: 45.0
new: 38.0

path: .metrics.halstead.estimated_program_length
old: 333.5719512325826
new: 291.6599113892102

path: .metrics.halstead.purity_ratio
old: 1.2540298918518142
new: 0.5566028843305538

path: .metrics.halstead.time
old: 1957.9386912134732
new: 9795.065096375572

path: .metrics.halstead.level
old: 0.045454545454545456
new: 0.017483321831147917

path: .metrics.halstead.vocabulary
old: 65.0
new: 59.0

path: .metrics.halstead.n1
old: 20.0
new: 21.0

path: .metrics.halstead.N2
old: 99.0
new: 207.0

path: .metrics.halstead.effort
old: 35242.89644184252
new: 176311.1717347603

path: .metrics.mi.mi_original
old: 52.34436818816289
new: 35.60650903734684

path: .metrics.mi.mi_visual_studio
old: 30.610741630504613
new: 20.822519904881194

path: .metrics.mi.mi_sei
old: 35.94758039359622
new: 12.6534410972518

path: .metrics.nexits.sum
old: 6.0
new: 17.0

path: .metrics.nexits.average
old: 0.5
new: 0.6538461538461539

path: .metrics.loc.ploc
old: 65.0
new: 116.0

path: .metrics.loc.cloc
old: 23.0
new: 43.0

path: .metrics.loc.sloc
old: 101.0
new: 194.0

path: .metrics.loc.lloc
old: 24.0
new: 35.0

path: .metrics.loc.blank
old: 13.0
new: 35.0

path: .metrics.cyclomatic.sum
old: 24.0
new: 36.0

path: .metrics.cyclomatic.average
old: 1.7142857142857142
new: 1.2

path: .metrics.cognitive.average
old: 0.16666666666666666
new: 0.1153846153846154

path: .metrics.cognitive.sum
old: 2.0
new: 3.0

path: .metrics.nargs.average
old: 0.5833333333333334
new: 0.7692307692307693

path: .metrics.nargs.sum
old: 7.0
new: 20.0

path: .metrics.nom.total
old: 12.0
new: 26.0

path: .metrics.nom.functions
old: 12.0
new: 26.0

Spaces Data

Minimal test - lines (99, 102)

path: .spaces[0].spaces[10].metrics.halstead.estimated_program_length
old: 17.509775004326936
new: 40.13896548741762

path: .spaces[0].spaces[10].metrics.halstead.level
old: 0.3333333333333333
new: 0.1388888888888889

path: .spaces[0].spaces[10].metrics.halstead.time
old: 4.5
new: 33.50472331410692

path: .spaces[0].spaces[10].metrics.halstead.difficulty
old: 3.0
new: 7.2

path: .spaces[0].spaces[10].metrics.halstead.purity_ratio
old: 1.9455305560363263
new: 1.8244984312462555

path: .spaces[0].spaces[10].metrics.halstead.n1
old: 6.0
new: 9.0

path: .spaces[0].spaces[10].metrics.halstead.N1
old: 7.0
new: 14.0

path: .spaces[0].spaces[10].metrics.halstead.effort
old: 81.0
new: 603.0850196539245

path: .spaces[0].spaces[10].metrics.halstead.bugs
old: 0.006240251469155711
new: 0.023793834650606825

path: .spaces[0].spaces[10].metrics.halstead.n2
old: 2.0
new: 5.0

path: .spaces[0].spaces[10].metrics.halstead.length
old: 9.0
new: 22.0

path: .spaces[0].spaces[10].metrics.halstead.vocabulary
old: 8.0
new: 14.0

path: .spaces[0].spaces[10].metrics.halstead.N2
old: 2.0
new: 8.0

path: .spaces[0].spaces[10].metrics.halstead.volume
old: 27.0
new: 83.76180828526729

path: .spaces[0].spaces[10].metrics.mi.mi_sei
old: 120.36819247706724
new: 105.15125244839123

path: .spaces[0].spaces[10].metrics.mi.mi_original
old: 135.83412922035413
new: 125.2865501427276

path: .spaces[0].spaces[10].metrics.mi.mi_visual_studio
old: 79.4351632867568
new: 73.26698838756

path: .spaces[0].spaces[10].metrics.loc.lloc
old: 1.0
new: 2.0

path: .spaces[0].spaces[10].metrics.loc.ploc
old: 3.0
new: 4.0

path: .spaces[0].spaces[10].metrics.loc.sloc
old: 3.0
new: 4.0

Code

  CFTypeRefPtr& operator=(const CFTypeRefPtr& aRhs) {
    assign_with_CFRetain(aRhs.mRawPtr);
    return *this;
  }

Minimal test - lines (86, 90)

path: .spaces[0].spaces[8].metrics.loc.cloc
old: 1.0
new: 0.0

path: .spaces[0].spaces[8].metrics.loc.ploc
old: 2.0
new: 5.0

path: .spaces[0].spaces[8].metrics.loc.lloc
old: 0.0
new: 2.0

path: .spaces[0].spaces[8].metrics.loc.sloc
old: 3.0
new: 5.0

path: .spaces[0].spaces[8].metrics.mi.mi_original
old: 139.2748625208651
new: 121.36727729304344

path: .spaces[0].spaces[8].metrics.mi.mi_sei
old: 164.32465386598284
new: 99.4969369442612

path: .spaces[0].spaces[8].metrics.mi.mi_visual_studio
old: 81.44728802389771
new: 70.9750159608441

path: .spaces[0].spaces[8].metrics.nexits.average
old: 0.0
new: 1.0

path: .spaces[0].spaces[8].metrics.nexits.sum
old: 0.0
new: 1.0

path: .spaces[0].spaces[8].metrics.halstead.time
old: 1.5479520632582415
new: 34.537437369316855

path: .spaces[0].spaces[8].metrics.halstead.difficulty
old: 2.0
new: 7.0

path: .spaces[0].spaces[8].metrics.halstead.length
old: 6.0
new: 24.0

path: .spaces[0].spaces[8].metrics.halstead.vocabulary
old: 5.0
new: 13.0

path: .spaces[0].spaces[8].metrics.halstead.estimated_program_length
old: 8.0
new: 35.161259458730164

path: .spaces[0].spaces[8].metrics.halstead.n1
old: 4.0
new: 7.0

path: .spaces[0].spaces[8].metrics.halstead.effort
old: 27.863137138648348
new: 621.6738726477034

path: .spaces[0].spaces[8].metrics.halstead.N2
old: 1.0
new: 12.0

path: .spaces[0].spaces[8].metrics.halstead.level
old: 0.5
new: 0.14285714285714285

path: .spaces[0].spaces[8].metrics.halstead.n2
old: 1.0
new: 6.0

path: .spaces[0].spaces[8].metrics.halstead.purity_ratio
old: 1.3333333333333333
new: 1.46505247744709

path: .spaces[0].spaces[8].metrics.halstead.N1
old: 5.0
new: 12.0

path: .spaces[0].spaces[8].metrics.halstead.volume
old: 13.931568569324174
new: 88.81055323538621

path: .spaces[0].spaces[8].metrics.halstead.bugs
old: 0.003063600184050184
new: 0.02428028735459271

path: .spaces[0].spaces[8].metrics.nargs.sum
old: 0.0
new: 1.0

path: .spaces[0].spaces[8].metrics.nargs.average
old: 0.0
new: 1.0

Code

  static CFTypeRefPtr WrapUnderGetRule(PtrT aRawPtr) {
    CFTypeRefPtr ptr;
    ptr.AssignUnderGetRule(aRawPtr);
    return ptr;
  }

Minimal test - lines (54, 58)

path: .spaces[0].spaces[2].metrics.cognitive.average
old: 0.0
new: 1.0

path: .spaces[0].spaces[2].metrics.cognitive.sum
old: 0.0
new: 1.0

path: .spaces[0].spaces[2].metrics.nargs.sum
old: 2.0
new: 0.0

path: .spaces[0].spaces[2].metrics.nargs.average
old: 2.0
new: 0.0

path: .spaces[0].spaces[2].metrics.halstead.level
old: 0.21428571428571427
new: 0.3

path: .spaces[0].spaces[2].metrics.halstead.bugs
old: 0.015295622567773837
new: 0.008109602660764532

path: .spaces[0].spaces[2].metrics.halstead.time
old: 17.26871868465843
new: 6.666666666666667

path: .spaces[0].spaces[2].metrics.halstead.difficulty
old: 4.666666666666667
new: 3.3333333333333335

path: .spaces[0].spaces[2].metrics.halstead.N2
old: 8.0
new: 4.0

path: .spaces[0].spaces[2].metrics.halstead.length
old: 18.0
new: 12.0

path: .spaces[0].spaces[2].metrics.halstead.purity_ratio
old: 1.9534033032627869
new: 1.36371066471669

path: .spaces[0].spaces[2].metrics.halstead.vocabulary
old: 13.0
new: 8.0

path: .spaces[0].spaces[2].metrics.halstead.effort
old: 310.8369363238518
new: 120.0

path: .spaces[0].spaces[2].metrics.halstead.n1
old: 7.0
new: 5.0

path: .spaces[0].spaces[2].metrics.halstead.N1
old: 10.0
new: 8.0

path: .spaces[0].spaces[2].metrics.halstead.estimated_program_length
old: 35.161259458730164
new: 16.36452797660028

path: .spaces[0].spaces[2].metrics.halstead.n2
old: 6.0
new: 3.0

path: .spaces[0].spaces[2].metrics.halstead.volume
old: 66.60791492653966
new: 36.0

path: .spaces[0].spaces[2].metrics.mi.mi_sei
old: 113.59397456600368
new: 106.04115485532472

path: .spaces[0].spaces[2].metrics.mi.mi_visual_studio
old: 76.68923928350978
new: 73.5864370401145

path: .spaces[0].spaces[2].metrics.mi.mi_original
old: 131.13859917480173
new: 125.8328073385958

path: .spaces[0].spaces[2].metrics.loc.ploc
old: 3.0
new: 5.0

path: .spaces[0].spaces[2].metrics.loc.sloc
old: 3.0
new: 5.0

path: .spaces[0].spaces[2].metrics.loc.lloc
old: 0.0
new: 2.0

path: .spaces[0].spaces[2].metrics.cyclomatic.average
old: 1.0
new: 2.0

path: .spaces[0].spaces[2].metrics.cyclomatic.sum
old: 1.0
new: 2.0

Code

  ~CFTypeRefPtr() {
    if (mRawPtr) {
      CFRelease(mRawPtr);
    }
  }

Minimal test - lines (80, 84)

path: .spaces[0].spaces[7].metrics.loc.ploc
old: 4.0
new: 5.0

path: .spaces[0].spaces[7].metrics.loc.sloc
old: 4.0
new: 5.0

path: .spaces[0].spaces[7].metrics.nargs.average
old: 0.0
new: 1.0

path: .spaces[0].spaces[7].metrics.nargs.sum
old: 0.0
new: 1.0

path: .spaces[0].spaces[7].metrics.halstead.length
old: 17.0
new: 24.0

path: .spaces[0].spaces[7].metrics.halstead.difficulty
old: 3.5
new: 7.0

path: .spaces[0].spaces[7].metrics.halstead.volume
old: 60.94436251225965
new: 88.81055323538621

path: .spaces[0].spaces[7].metrics.halstead.N2
old: 7.0
new: 12.0

path: .spaces[0].spaces[7].metrics.halstead.bugs
old: 0.011899986460347829
new: 0.02428028735459271

path: .spaces[0].spaces[7].metrics.halstead.level
old: 0.2857142857142857
new: 0.14285714285714285

path: .spaces[0].spaces[7].metrics.halstead.time
old: 11.850292710717154
new: 34.537437369316855

path: .spaces[0].spaces[7].metrics.halstead.N1
old: 10.0
new: 12.0

path: .spaces[0].spaces[7].metrics.halstead.effort
old: 213.3052687929088
new: 621.6738726477034

path: .spaces[0].spaces[7].metrics.halstead.n1
old: 6.0
new: 7.0

path: .spaces[0].spaces[7].metrics.halstead.purity_ratio
old: 1.8246794122737573
new: 1.46505247744709

path: .spaces[0].spaces[7].metrics.halstead.estimated_program_length
old: 31.019550008653873
new: 35.161259458730164

path: .spaces[0].spaces[7].metrics.halstead.vocabulary
old: 12.0
new: 13.0

path: .spaces[0].spaces[7].metrics.mi.mi_visual_studio
old: 74.23405396973165
new: 70.9750159608441

path: .spaces[0].spaces[7].metrics.mi.mi_sei
old: 107.53701147893022
new: 99.4969369442612

path: .spaces[0].spaces[7].metrics.mi.mi_original
old: 126.9402322882411
new: 121.36727729304344

Code

  static CFTypeRefPtr WrapUnderCreateRule(PtrT aRawPtr) {
    CFTypeRefPtr ptr;
    ptr.AssignUnderCreateRule(aRawPtr);
    return ptr;
  }

Minimal test - lines (42, 48)

path: .spaces[0].spaces[1].metrics.halstead.time
old: 146.68450572150317
new: 25.19431979673479

path: .spaces[0].spaces[1].metrics.halstead.n2
old: 14.0
new: 6.0

path: .spaces[0].spaces[1].metrics.halstead.vocabulary
old: 27.0
new: 12.0

path: .spaces[0].spaces[1].metrics.halstead.level
old: 0.09364548494983276
new: 0.18181818181818185

path: .spaces[0].spaces[1].metrics.halstead.purity_ratio
old: 1.9501670239353972
new: 1.348676087332777

path: .spaces[0].spaces[1].metrics.halstead.n1
old: 13.0
new: 6.0

path: .spaces[0].spaces[1].metrics.halstead.N1
old: 29.0
new: 12.0

path: .spaces[0].spaces[1].metrics.halstead.volume
old: 247.25415011250035
new: 82.45413751658658

path: .spaces[0].spaces[1].metrics.halstead.length
old: 52.0
new: 23.0

path: .spaces[0].spaces[1].metrics.halstead.effort
old: 2640.321102987057
new: 453.4977563412262

path: .spaces[0].spaces[1].metrics.halstead.N2
old: 23.0
new: 11.0

path: .spaces[0].spaces[1].metrics.halstead.estimated_program_length
old: 101.40868524464064
new: 31.019550008653873

path: .spaces[0].spaces[1].metrics.halstead.bugs
old: 0.06367709512717437
new: 0.019675638761305608

path: .spaces[0].spaces[1].metrics.halstead.difficulty
old: 10.678571428571429
new: 5.5

path: .spaces[0].spaces[1].metrics.nargs.sum
old: 0.0
new: 1.0

path: .spaces[0].spaces[1].metrics.nargs.average
old: 0.0
new: 1.0

path: .spaces[0].spaces[1].metrics.loc.sloc
old: 10.0
new: 7.0

path: .spaces[0].spaces[1].metrics.loc.lloc
old: 4.0
new: 3.0

path: .spaces[0].spaces[1].metrics.loc.ploc
old: 10.0
new: 7.0

path: .spaces[0].spaces[1].metrics.mi.mi_sei
old: 75.38554004598082
new: 91.96014634460232

path: .spaces[0].spaces[1].metrics.mi.mi_visual_studio
old: 61.16020723109203
new: 67.87871110523274

path: .spaces[0].spaces[1].metrics.mi.mi_original
old: 104.58395436516736
new: 116.07259598994798

path: .spaces[0].spaces[1].metrics.nexits.average
old: 1.0
new: 0.0

path: .spaces[0].spaces[1].metrics.nexits.sum
old: 1.0
new: 0.0

Code

  void assign_assuming_CFRetain(PtrT aNewPtr) {
    PtrT oldPtr = mRawPtr;
    mRawPtr = aNewPtr;
    if (oldPtr) {
      CFRelease(oldPtr);
    }
  }

Minimal test - lines (75, 75)

path: .spaces[0].spaces[6].metrics.loc.ploc
old: 3.0
new: 1.0

path: .spaces[0].spaces[6].metrics.loc.sloc
old: 3.0
new: 1.0

path: .spaces[0].spaces[6].metrics.nargs.average
old: 2.0
new: 1.0

path: .spaces[0].spaces[6].metrics.nargs.sum
old: 2.0
new: 1.0

path: .spaces[0].spaces[6].metrics.mi.mi_original
old: 130.75558342857153
new: 154.40593499075715

path: .spaces[0].spaces[6].metrics.mi.mi_sei
old: 113.041399648335
new: 147.1616445623808

path: .spaces[0].spaces[6].metrics.mi.mi_visual_studio
old: 76.46525346700089
new: 90.29586841564748

path: .spaces[0].spaces[6].metrics.halstead.estimated_program_length
old: 31.26112492884004
new: 9.509775004326936

path: .spaces[0].spaces[6].metrics.halstead.bugs
old: 0.01814180544564004
new: 0.004312177013671752

path: .spaces[0].spaces[6].metrics.halstead.vocabulary
old: 12.0
new: 6.0

path: .spaces[0].spaces[6].metrics.halstead.difficulty
old: 5.6
new: 2.0

path: .spaces[0].spaces[6].metrics.halstead.length
old: 20.0
new: 9.0

path: .spaces[0].spaces[6].metrics.halstead.n1
old: 7.0
new: 3.0

path: .spaces[0].spaces[6].metrics.halstead.N1
old: 12.0
new: 5.0

path: .spaces[0].spaces[6].metrics.halstead.volume
old: 71.69925001442311
new: 23.264662506490403

path: .spaces[0].spaces[6].metrics.halstead.effort
old: 401.5158000807694
new: 46.529325012980806

path: .spaces[0].spaces[6].metrics.halstead.purity_ratio
old: 1.563056246442002
new: 1.0566416671474377

path: .spaces[0].spaces[6].metrics.halstead.time
old: 22.30643333782052
new: 2.584962500721156

path: .spaces[0].spaces[6].metrics.halstead.N2
old: 8.0
new: 4.0

path: .spaces[0].spaces[6].metrics.halstead.n2
old: 5.0
new: 3.0

path: .spaces[0].spaces[6].metrics.halstead.level
old: 0.17857142857142858
new: 0.5

Code

  MOZ_IMPLICIT CFTypeRefPtr(decltype(nullptr)) : mRawPtr(nullptr) {}

Minimal test - lines (71, 73)

path: .spaces[0].spaces[5].metrics.loc.lloc
old: 0.0
new: 1.0

path: .spaces[0].spaces[5].metrics.cyclomatic.sum
old: 1.0
new: 2.0

path: .spaces[0].spaces[5].metrics.cyclomatic.average
old: 1.0
new: 2.0

path: .spaces[0].spaces[5].metrics.mi.mi_visual_studio
old: 76.46525346700089
new: 75.99935894605139

path: .spaces[0].spaces[5].metrics.mi.mi_sei
old: 113.041399648335
new: 111.99385375517288

path: .spaces[0].spaces[5].metrics.mi.mi_original
old: 130.75558342857153
new: 129.9589037977479

path: .spaces[0].spaces[5].metrics.nargs.average
old: 2.0
new: 1.0

path: .spaces[0].spaces[5].metrics.nargs.sum
old: 2.0
new: 1.0

path: .spaces[0].spaces[5].metrics.halstead.level
old: 0.17857142857142858
new: 0.1111111111111111

path: .spaces[0].spaces[5].metrics.halstead.n1
old: 7.0
new: 9.0

path: .spaces[0].spaces[5].metrics.halstead.difficulty
old: 5.6
new: 9.0

path: .spaces[0].spaces[5].metrics.halstead.volume
old: 71.69925001442311
new: 79.9544533632097

path: .spaces[0].spaces[5].metrics.halstead.effort
old: 401.5158000807694
new: 719.5900802688873

path: .spaces[0].spaces[5].metrics.halstead.estimated_program_length
old: 31.26112492884004
new: 40.13896548741762

path: .spaces[0].spaces[5].metrics.halstead.bugs
old: 0.01814180544564004
new: 0.026767153565498338

path: .spaces[0].spaces[5].metrics.halstead.N2
old: 8.0
new: 10.0

path: .spaces[0].spaces[5].metrics.halstead.N1
old: 12.0
new: 11.0

path: .spaces[0].spaces[5].metrics.halstead.time
old: 22.30643333782052
new: 39.97722668160485

path: .spaces[0].spaces[5].metrics.halstead.length
old: 20.0
new: 21.0

path: .spaces[0].spaces[5].metrics.halstead.purity_ratio
old: 1.563056246442002
new: 1.9113793089246487

path: .spaces[0].spaces[5].metrics.halstead.vocabulary
old: 12.0
new: 14.0

Code

  CFTypeRefPtr(CFTypeRefPtr&& aRefPtr) : mRawPtr(aRefPtr.mRawPtr) {
    aRefPtr.mRawPtr = nullptr;
  }

Minimal test - lines (62, 62)

path: .spaces[0].spaces[3].metrics.halstead.N2
old: 1.0
new: 3.0

path: .spaces[0].spaces[3].metrics.halstead.bugs
old: 0.003063600184050184
new: 0.003010517177243676

path: .spaces[0].spaces[3].metrics.halstead.level
old: 0.5
new: 0.6666666666666666

path: .spaces[0].spaces[3].metrics.halstead.purity_ratio
old: 1.3333333333333333
new: 1.3585392863324195

path: .spaces[0].spaces[3].metrics.halstead.N1
old: 5.0
new: 4.0

path: .spaces[0].spaces[3].metrics.halstead.estimated_program_length
old: 8.0
new: 9.509775004326936

path: .spaces[0].spaces[3].metrics.halstead.length
old: 6.0
new: 7.0

path: .spaces[0].spaces[3].metrics.halstead.difficulty
old: 2.0
new: 1.5

path: .spaces[0].spaces[3].metrics.halstead.time
old: 1.5479520632582415
new: 1.5078947920873411

path: .spaces[0].spaces[3].metrics.halstead.n1
old: 4.0
new: 3.0

path: .spaces[0].spaces[3].metrics.halstead.n2
old: 1.0
new: 3.0

path: .spaces[0].spaces[3].metrics.halstead.volume
old: 13.931568569324174
new: 18.094737505048094

path: .spaces[0].spaces[3].metrics.halstead.effort
old: 27.863137138648348
new: 27.14210625757214

path: .spaces[0].spaces[3].metrics.halstead.vocabulary
old: 5.0
new: 6.0

path: .spaces[0].spaces[3].metrics.loc.sloc
old: 2.0
new: 1.0

path: .spaces[0].spaces[3].metrics.loc.ploc
old: 2.0
new: 1.0

path: .spaces[0].spaces[3].metrics.mi.mi_sei
old: 134.8085138584187
new: 149.04700897518126

path: .spaces[0].spaces[3].metrics.mi.mi_original
old: 145.84339727221737
new: 155.7127700178179

path: .spaces[0].spaces[3].metrics.mi.mi_visual_studio
old: 85.28853641650139
new: 91.0600994256245

Code

  CFTypeRefPtr() : mRawPtr(nullptr) {}

Minimal test - lines (104, 108)

path: .spaces[0].spaces[11].metrics.halstead.time
old: 16.77532672223962
new: 64.11261160257476

path: .spaces[0].spaces[11].metrics.halstead.bugs
old: 0.015002872101374016
new: 0.036673812538828544

path: .spaces[0].spaces[11].metrics.halstead.vocabulary
old: 13.0
new: 17.0

path: .spaces[0].spaces[11].metrics.halstead.N1
old: 11.0
new: 17.0

path: .spaces[0].spaces[11].metrics.halstead.N2
old: 6.0
new: 11.0

path: .spaces[0].spaces[11].metrics.halstead.level
old: 0.20833333333333337
new: 0.09917355371900824

path: .spaces[0].spaces[11].metrics.halstead.effort
old: 301.9558810003131
new: 1154.0270088463458

path: .spaces[0].spaces[11].metrics.halstead.n2
old: 5.0
new: 6.0

path: .spaces[0].spaces[11].metrics.halstead.purity_ratio
old: 2.0946847337904004
new: 1.9129829574763288

path: .spaces[0].spaces[11].metrics.halstead.estimated_program_length
old: 35.60964047443681
new: 53.5635228093372

path: .spaces[0].spaces[11].metrics.halstead.n1
old: 8.0
new: 11.0

path: .spaces[0].spaces[11].metrics.halstead.volume
old: 62.907475208398566
new: 114.4489595550095

path: .spaces[0].spaces[11].metrics.halstead.length
old: 17.0
new: 28.0

path: .spaces[0].spaces[11].metrics.halstead.difficulty
old: 4.8
new: 10.083333333333334

path: .spaces[0].spaces[11].metrics.nargs.average
old: 1.0
new: 0.0

path: .spaces[0].spaces[11].metrics.nargs.sum
old: 1.0
new: 0.0

path: .spaces[0].spaces[11].metrics.cyclomatic.average
old: 1.0
new: 2.0

path: .spaces[0].spaces[11].metrics.cyclomatic.sum
old: 1.0
new: 2.0

path: .spaces[0].spaces[11].metrics.mi.mi_visual_studio
old: 76.86305434314004
new: 70.06926038000175

path: .spaces[0].spaces[11].metrics.mi.mi_original
old: 131.43582292676948
new: 119.818435249803

path: .spaces[0].spaces[11].metrics.mi.mi_sei
old: 114.02277779900194
new: 97.36425006876236

path: .spaces[0].spaces[11].metrics.loc.ploc
old: 3.0
new: 5.0

path: .spaces[0].spaces[11].metrics.loc.lloc
old: 1.0
new: 3.0

path: .spaces[0].spaces[11].metrics.loc.sloc
old: 3.0
new: 5.0

Code

  CFTypeRefPtr& operator=(CFTypeRefPtr&& aRefPtr) {
    assign_assuming_CFRetain(aRefPtr.mRawPtr);
    aRefPtr.mRawPtr = nullptr;
    return *this;
  }

Minimal test - lines (37, 40)

path: .spaces[0].spaces[0].metrics.nargs.average
old: 0.0
new: 1.0

path: .spaces[0].spaces[0].metrics.nargs.sum
old: 0.0
new: 1.0

path: .spaces[0].spaces[0].metrics.loc.lloc
old: 0.0
new: 2.0

path: .spaces[0].spaces[0].metrics.loc.sloc
old: 2.0
new: 4.0

path: .spaces[0].spaces[0].metrics.loc.ploc
old: 2.0
new: 4.0

path: .spaces[0].spaces[0].metrics.halstead.estimated_program_length
old: 8.0
new: 19.60964047443681

path: .spaces[0].spaces[0].metrics.halstead.purity_ratio
old: 1.6
new: 1.400688605316915

path: .spaces[0].spaces[0].metrics.halstead.n2
old: 1.0
new: 5.0

path: .spaces[0].spaces[0].metrics.halstead.effort
old: 23.21928094887362
new: 124.26106005653862

path: .spaces[0].spaces[0].metrics.halstead.bugs
old: 0.002712967490108627
new: 0.008300459115293854

path: .spaces[0].spaces[0].metrics.halstead.N1
old: 4.0
new: 7.0

path: .spaces[0].spaces[0].metrics.halstead.time
old: 1.289960052715201
new: 6.903392225363257

path: .spaces[0].spaces[0].metrics.halstead.N2
old: 1.0
new: 7.0

path: .spaces[0].spaces[0].metrics.halstead.vocabulary
old: 5.0
new: 9.0

path: .spaces[0].spaces[0].metrics.halstead.volume
old: 11.60964047443681
new: 44.37895002019237

path: .spaces[0].spaces[0].metrics.halstead.difficulty
old: 2.0
new: 2.8

path: .spaces[0].spaces[0].metrics.halstead.length
old: 5.0
new: 14.0

path: .spaces[0].spaces[0].metrics.halstead.level
old: 0.5
new: 0.35714285714285715

path: .spaces[0].spaces[0].metrics.mi.mi_original
old: 146.79146936754594
new: 128.58965200631525

path: .spaces[0].spaces[0].metrics.mi.mi_sei
old: 136.17629276875445
new: 109.91662112654024

path: .spaces[0].spaces[0].metrics.mi.mi_visual_studio
old: 85.84296454242453
new: 75.19862690427792

Code

  void assign_with_CFRetain(PtrT aRawPtr) {
    CFRetain(aRawPtr);
    assign_assuming_CFRetain(aRawPtr);
  }

Minimal test - lines (64, 69)

path: .spaces[0].spaces[4].metrics.nexits.average
old: 1.0
new: 0.0

path: .spaces[0].spaces[4].metrics.nexits.sum
old: 1.0
new: 0.0

path: .spaces[0].spaces[4].metrics.halstead.effort
old: 4426.455839737043
new: 788.122468865924

path: .spaces[0].spaces[4].metrics.halstead.n1
old: 15.0
new: 9.0

path: .spaces[0].spaces[4].metrics.halstead.N2
old: 27.0
new: 10.0

path: .spaces[0].spaces[4].metrics.halstead.N1
old: 51.0
new: 13.0

path: .spaces[0].spaces[4].metrics.halstead.estimated_program_length
old: 133.6620089600894
new: 40.13896548741762

path: .spaces[0].spaces[4].metrics.halstead.difficulty
old: 11.25
new: 9.0

path: .spaces[0].spaces[4].metrics.halstead.level
old: 0.08888888888888889
new: 0.1111111111111111

path: .spaces[0].spaces[4].metrics.halstead.vocabulary
old: 33.0
new: 14.0

path: .spaces[0].spaces[4].metrics.halstead.volume
old: 393.46274130995937
new: 87.56916320732489

path: .spaces[0].spaces[4].metrics.halstead.n2
old: 18.0
new: 5.0

path: .spaces[0].spaces[4].metrics.halstead.bugs
old: 0.08986339786239265
new: 0.028440761343675472

path: .spaces[0].spaces[4].metrics.halstead.purity_ratio
old: 1.7136154994883257
new: 1.7451724124964183

path: .spaces[0].spaces[4].metrics.halstead.time
old: 245.9142133187246
new: 43.784581603662446

path: .spaces[0].spaces[4].metrics.halstead.length
old: 78.0
new: 23.0

path: .spaces[0].spaces[4].metrics.cyclomatic.average
old: 10.0
new: 2.0

path: .spaces[0].spaces[4].metrics.cyclomatic.sum
old: 10.0
new: 2.0

path: .spaces[0].spaces[4].metrics.loc.lloc
old: 15.0
new: 2.0

path: .spaces[0].spaces[4].metrics.loc.ploc
old: 21.0
new: 6.0

path: .spaces[0].spaces[4].metrics.loc.sloc
old: 21.0
new: 6.0

path: .spaces[0].spaces[4].metrics.nargs.sum
old: 0.0
new: 1.0

path: .spaces[0].spaces[4].metrics.nargs.average
old: 0.0
new: 1.0

path: .spaces[0].spaces[4].metrics.mi.mi_sei
old: 52.72002502290947
new: 95.111382182126

path: .spaces[0].spaces[4].metrics.mi.mi_original
old: 88.3088073432167
new: 118.25686622600696

path: .spaces[0].spaces[4].metrics.mi.mi_visual_studio
old: 51.642577393693976
new: 69.15606212047192

Code

  CFTypeRefPtr(const CFTypeRefPtr& aSmartPtr)
      : mRawPtr(aSmartPtr.mRawPtr) {
    if (mRawPtr) {
      CFRetain(mRawPtr);
    }
  }

Minimal test - lines (35, 139)

path: .spaces[0].metrics.loc.cloc
old: 7.0
new: 15.0

path: .spaces[0].metrics.loc.lloc
old: 24.0
new: 27.0

path: .spaces[0].metrics.loc.blank
old: 12.0
new: 22.0

path: .spaces[0].metrics.loc.sloc
old: 81.0
new: 105.0

path: .spaces[0].metrics.loc.ploc
old: 62.0
new: 68.0

path: .spaces[0].metrics.cognitive.sum
old: 2.0
new: 3.0

path: .spaces[0].metrics.nom.functions
old: 12.0
new: 18.0

path: .spaces[0].metrics.nom.total
old: 12.0
new: 18.0

path: .spaces[0].metrics.halstead.bugs
old: 0.3620311769857549
new: 0.6063297346551968

path: .spaces[0].metrics.halstead.length
old: 263.0
new: 292.0

path: .spaces[0].metrics.halstead.effort
old: 35793.22582015424
new: 77579.17952094632

path: .spaces[0].metrics.halstead.vocabulary
old: 62.0
new: 37.0

path: .spaces[0].metrics.halstead.level
old: 0.04375
new: 0.0196078431372549

path: .spaces[0].metrics.halstead.purity_ratio
old: 1.1897942724504
new: 0.5339911993116542

path: .spaces[0].metrics.halstead.N2
old: 96.0
new: 120.0

path: .spaces[0].metrics.halstead.time
old: 1988.5125455641248
new: 4309.954417830351

path: .spaces[0].metrics.halstead.N1
old: 167.0
new: 172.0

path: .spaces[0].metrics.halstead.n2
old: 42.0
new: 20.0

path: .spaces[0].metrics.halstead.n1
old: 20.0
new: 17.0

path: .spaces[0].metrics.halstead.difficulty
old: 22.857142857142858
new: 51.0

path: .spaces[0].metrics.halstead.volume
old: 1565.953629631748
new: 1521.1603827636534

path: .spaces[0].metrics.halstead.estimated_program_length
old: 312.9158936544552
new: 155.92543019900302

path: .spaces[0].metrics.nargs.average
old: 0.5833333333333334
new: 0.3888888888888889

path: .spaces[0].metrics.nexits.sum
old: 6.0
new: 9.0

path: .spaces[0].metrics.mi.mi_sei
old: 29.809714672540547
new: 29.142725665017668

path: .spaces[0].metrics.mi.mi_original
old: 56.267422314202335
new: 51.7542529194659

path: .spaces[0].metrics.mi.mi_visual_studio
old: 32.904925329942884
new: 30.2656449821438

path: .spaces[0].metrics.cyclomatic.average
old: 1.7692307692307692
new: 1.3157894736842106

path: .spaces[0].metrics.cyclomatic.sum
old: 23.0
new: 25.0

Code

class CFTypeRefPtr {
 private:
  void assign_with_CFRetain(PtrT aRawPtr) {
    CFRetain(aRawPtr);
    assign_assuming_CFRetain(aRawPtr);
  }

  void assign_assuming_CFRetain(PtrT aNewPtr) {
    PtrT oldPtr = mRawPtr;
    mRawPtr = aNewPtr;
    if (oldPtr) {
      CFRelease(oldPtr);
    }
  }

 private:
  PtrT mRawPtr;

 public:
  ~CFTypeRefPtr() {
    if (mRawPtr) {
      CFRelease(mRawPtr);
    }
  }

  // Constructors

  CFTypeRefPtr() : mRawPtr(nullptr) {}

  CFTypeRefPtr(const CFTypeRefPtr& aSmartPtr)
      : mRawPtr(aSmartPtr.mRawPtr) {
    if (mRawPtr) {
      CFRetain(mRawPtr);
    }
  }

  CFTypeRefPtr(CFTypeRefPtr&& aRefPtr) : mRawPtr(aRefPtr.mRawPtr) {
    aRefPtr.mRawPtr = nullptr;
  }

  MOZ_IMPLICIT CFTypeRefPtr(decltype(nullptr)) : mRawPtr(nullptr) {}

  // There is no constructor from a raw pointer value.
  // Use one of the static WrapUnder*Rule methods below instead.

  static CFTypeRefPtr WrapUnderCreateRule(PtrT aRawPtr) {
    CFTypeRefPtr ptr;
    ptr.AssignUnderCreateRule(aRawPtr);
    return ptr;
  }

  static CFTypeRefPtr WrapUnderGetRule(PtrT aRawPtr) {
    CFTypeRefPtr ptr;
    ptr.AssignUnderGetRule(aRawPtr);
    return ptr;
  }

  // Assignment operators

  CFTypeRefPtr& operator=(decltype(nullptr)) {
    assign_assuming_CFRetain(nullptr);
    return *this;
  }

  CFTypeRefPtr& operator=(const CFTypeRefPtr& aRhs) {
    assign_with_CFRetain(aRhs.mRawPtr);
    return *this;
  }

  CFTypeRefPtr& operator=(CFTypeRefPtr&& aRefPtr) {
    assign_assuming_CFRetain(aRefPtr.mRawPtr);
    aRefPtr.mRawPtr = nullptr;
    return *this;
  }

  // There is no operator= for a raw pointer value.
  // Use one of the AssignUnder*Rule methods below instead.

  CFTypeRefPtr& AssignUnderCreateRule(PtrT aRawPtr) {
    // Freshly-created objects come with a retain count of 1.
    assign_assuming_CFRetain(aRawPtr);
    return *this;
  }

  CFTypeRefPtr& AssignUnderGetRule(PtrT aRawPtr) {
    assign_with_CFRetain(aRawPtr);
    return *this;
  }

  // Other pointer operators

  // This is the only way to get the raw pointer out of the smart pointer.
  // There is no implicit conversion to a raw pointer.
  PtrT get() const { return mRawPtr; }

  // Don't allow implicit conversion of temporary CFTypeRefPtr to raw pointer,
  // because the refcount might be one and the pointer will immediately become
  // invalid.
  operator PtrT() const&& = delete;
  // Also don't allow implicit conversion of non-temporary CFTypeRefPtr.
  operator PtrT() const& = delete;

  // These let you null-check a pointer without calling get().
  explicit operator bool() const { return !!mRawPtr; }
};

Minimal test - lines (94, 97)

path: .spaces[0].spaces[9].metrics.mi.mi_visual_studio
old: 78.00696395465648
new: 74.41840954484594

path: .spaces[0].spaces[9].metrics.mi.mi_original
old: 133.3919083624626
new: 127.25548032168658

path: .spaces[0].spaces[9].metrics.mi.mi_sei
old: 116.84481255663158
new: 107.991818253432

path: .spaces[0].spaces[9].metrics.loc.lloc
old: 1.0
new: 2.0

path: .spaces[0].spaces[9].metrics.loc.sloc
old: 3.0
new: 4.0

path: .spaces[0].spaces[9].metrics.loc.ploc
old: 3.0
new: 4.0

path: .spaces[0].spaces[9].metrics.halstead.purity_ratio
old: 1.8774132274282072
new: 2.0

path: .spaces[0].spaces[9].metrics.halstead.time
old: 8.397096017631943
new: 15.933166669871802

path: .spaces[0].spaces[9].metrics.halstead.length
old: 13.0
new: 16.0

path: .spaces[0].spaces[9].metrics.halstead.n2
old: 3.0
new: 4.0

path: .spaces[0].spaces[9].metrics.halstead.effort
old: 151.14772831737497
new: 286.79700005769246

path: .spaces[0].spaces[9].metrics.halstead.difficulty
old: 3.5
new: 5.0

path: .spaces[0].spaces[9].metrics.halstead.vocabulary
old: 10.0
new: 12.0

path: .spaces[0].spaces[9].metrics.halstead.bugs
old: 0.009458301667417108
new: 0.014496455101021127

path: .spaces[0].spaces[9].metrics.halstead.estimated_program_length
old: 24.406371956566694
new: 32.0

path: .spaces[0].spaces[9].metrics.halstead.n1
old: 7.0
new: 8.0

path: .spaces[0].spaces[9].metrics.halstead.volume
old: 43.18506523353571
new: 57.3594000115385

path: .spaces[0].spaces[9].metrics.halstead.N2
old: 3.0
new: 5.0

path: .spaces[0].spaces[9].metrics.halstead.level
old: 0.2857142857142857
new: 0.2

path: .spaces[0].spaces[9].metrics.halstead.N1
old: 10.0
new: 11.0

Code

  CFTypeRefPtr& operator=(decltype(nullptr)) {
    assign_assuming_CFRetain(nullptr);
    return *this;
  }