# Global Metrics

path: .metrics.nom.functions
old: 110.0
new: 6.0
path: .metrics.nom.total
old: 110.0
new: 6.0
path: .metrics.nexits.sum
old: 122.0
new: 8.0
path: .metrics.nexits.average
old: 1.1090909090909091
new: 1.3333333333333333
path: .metrics.cognitive.sum
old: 1980.0
new: 5.0
path: .metrics.cognitive.average
old: 18.0
new: 0.8333333333333334
path: .metrics.loc.ploc
old: 5420.0
new: 37.0
path: .metrics.loc.lloc
old: 2667.0
new: 18.0
path: .metrics.loc.sloc
old: 6478.0
new: 56.0
path: .metrics.loc.blank
old: 636.0
new: 12.0
path: .metrics.loc.cloc
old: 422.0
new: 7.0
path: .metrics.nargs.average
old: 5.009090909090909
new: 1.3333333333333333
path: .metrics.nargs.sum
old: 551.0
new: 8.0
path: .metrics.cyclomatic.sum
old: 1486.0
new: 12.0
path: .metrics.cyclomatic.average
old: 10.248275862068963
new: 1.7142857142857142
path: .metrics.halstead.N2
old: 18556.0
new: 75.0
path: .metrics.halstead.difficulty
old: 310.7464114832536
new: 16.875
path: .metrics.halstead.N1
old: 22910.0
new: 114.0
path: .metrics.halstead.length
old: 41466.0
new: 189.0
path: .metrics.halstead.time
old: 7561046.19632728
new: 1037.9610075741666
path: .metrics.halstead.purity_ratio
old: 0.3776141282874223
new: 1.523469702759027
path: .metrics.halstead.vocabulary
old: 1512.0
new: 58.0
path: .metrics.halstead.volume
old: 437973.944362751
new: 1107.158408079111
path: .metrics.halstead.level
old: 0.003218058079019493
new: 0.05925925925925926
path: .metrics.halstead.estimated_program_length
old: 15658.147443566251
new: 287.9357738214561
path: .metrics.halstead.n2
old: 1463.0
new: 40.0
path: .metrics.halstead.bugs
old: 88.19588916674589
new: 0.23470073049257847
path: .metrics.halstead.n1
old: 49.0
new: 18.0
path: .metrics.halstead.effort
old: 136098831.53389105
new: 18683.298136334997
path: .metrics.mi.mi_original
old: -380.5014634547774
new: 66.57963211024864
path: .metrics.mi.mi_sei
old: -454.08504961553007
new: 47.61230636614412
path: .metrics.mi.mi_visual_studio
old: 0.0
new: 38.93545737441441

# Spaces Data

## Minimal test - lines (31, 42)

path: .spaces[3].metrics.cyclomatic.sum
old: 2.0
new: 5.0
path: .spaces[3].metrics.cyclomatic.average
old: 1.0
new: 5.0
path: .spaces[3].metrics.nexits.sum
old: 1.0
new: 3.0
path: .spaces[3].metrics.nexits.average
old: 1.0
new: 3.0
path: .spaces[3].metrics.nargs.sum
old: 4.0
new: 3.0
path: .spaces[3].metrics.nargs.average
old: 4.0
new: 3.0
path: .spaces[3].metrics.cognitive.sum
old: 0.0
new: 4.0
path: .spaces[3].metrics.cognitive.average
old: 0.0
new: 4.0
path: .spaces[3].metrics.loc.sloc
old: 7.0
new: 12.0
path: .spaces[3].metrics.loc.lloc
old: 1.0
new: 6.0
path: .spaces[3].metrics.loc.ploc
old: 7.0
new: 10.0
path: .spaces[3].metrics.loc.blank
old: 0.0
new: 2.0
path: .spaces[3].metrics.mi.mi_sei
old: 86.9204796219608
new: 68.83389628677237
path: .spaces[3].metrics.mi.mi_visual_studio
old: 65.8358860878288
new: 58.38068568422528
path: .spaces[3].metrics.mi.mi_original
old: 112.57936521018723
new: 99.83097252002524
path: .spaces[3].metrics.halstead.effort
old: 939.1781556995272
new: 3108.3487773511574
path: .spaces[3].metrics.halstead.time
old: 52.17656420552929
new: 172.68604318617545
path: .spaces[3].metrics.halstead.level
old: 0.171875
new: 0.09846153846153846
path: .spaces[3].metrics.halstead.volume
old: 161.42124551085624
new: 306.05280269303705
path: .spaces[3].metrics.halstead.estimated_program_length
old: 62.05374780501027
new: 112.1057163358342
path: .spaces[3].metrics.halstead.length
old: 38.0
new: 63.0
path: .spaces[3].metrics.halstead.vocabulary
old: 19.0
new: 29.0
path: .spaces[3].metrics.halstead.bugs
old: 0.03196765162934063
new: 0.07099567745525864
path: .spaces[3].metrics.halstead.N2
old: 16.0
new: 25.0
path: .spaces[3].metrics.halstead.n2
old: 11.0
new: 16.0
path: .spaces[3].metrics.halstead.difficulty
old: 5.818181818181818
new: 10.15625
path: .spaces[3].metrics.halstead.n1
old: 8.0
new: 13.0
path: .spaces[3].metrics.halstead.N1
old: 22.0
new: 38.0
path: .spaces[3].metrics.halstead.purity_ratio
old: 1.632993363289744
new: 1.779455814854511

### Code

    NS_GetXPTCallStub(REFNSIID aIID, nsIXPTCProxy* aOuter,
                      nsISomeInterface** aResult) {
      if (NS_WARN_IF(!aOuter) || NS_WARN_IF(!aResult)) return NS_ERROR_INVALID_ARG;

      const nsXPTInterfaceInfo* iie = nsXPTInterfaceInfo::ByIID(aIID);
      if (!iie || iie->IsBuiltinClass()) {
        return NS_ERROR_FAILURE;
      }

      *aResult = new nsXPTCStubBase(aOuter, iie);
      return NS_OK;
    }

## Minimal test - lines (51, 56)

path: .spaces[5].metrics.nexits.average
old: 4.0
new: 1.0
path: .spaces[5].metrics.nexits.sum
old: 4.0
new: 1.0
path: .spaces[5].metrics.mi.mi_visual_studio
old: 57.31499647643811
new: 70.77341864342087
path: .spaces[5].metrics.mi.mi_sei
old: 66.10301207216999
new: 137.99212716383187
path: .spaces[5].metrics.mi.mi_original
old: 98.00864397470916
new: 121.02254588024968
path: .spaces[5].metrics.loc.cloc
old: 0.0
new: 2.0
path: .spaces[5].metrics.loc.lloc
old: 7.0
new: 1.0
path: .spaces[5].metrics.loc.ploc
old: 13.0
new: 4.0
path: .spaces[5].metrics.loc.sloc
old: 13.0
new: 6.0
path: .spaces[5].metrics.halstead.vocabulary
old: 35.0
new: 12.0
path: .spaces[5].metrics.halstead.effort
old: 3716.165545776628
new: 263.494743803005
path: .spaces[5].metrics.halstead.N2
old: 28.0
new: 7.0
path: .spaces[5].metrics.halstead.length
old: 69.0
new: 15.0
path: .spaces[5].metrics.halstead.volume
old: 353.92052816920267
new: 53.77443751081734
path: .spaces[5].metrics.halstead.estimated_program_length
old: 145.04192083187502
new: 31.26112492884004
path: .spaces[5].metrics.halstead.level
old: 0.09523809523809525
new: 0.2040816326530612
path: .spaces[5].metrics.halstead.n1
old: 15.0
new: 7.0
path: .spaces[5].metrics.halstead.n2
old: 20.0
new: 5.0
path: .spaces[5].metrics.halstead.time
old: 206.45364143203489
new: 14.638596877944725
path: .spaces[5].metrics.halstead.bugs
old: 0.07997276535065088
new: 0.013700193974307346
path: .spaces[5].metrics.halstead.purity_ratio
old: 2.1020568236503627
new: 2.0840749952560027
path: .spaces[5].metrics.halstead.difficulty
old: 10.5
new: 4.9
path: .spaces[5].metrics.halstead.N1
old: 41.0
new: 8.0
path: .spaces[5].metrics.nargs.sum
old: 4.0
new: 2.0
path: .spaces[5].metrics.nargs.average
old: 4.0
new: 2.0
path: .spaces[5].metrics.cyclomatic.average
old: 4.0
new: 1.0
path: .spaces[5].metrics.cyclomatic.sum
old: 4.0
new: 1.0
path: .spaces[5].metrics.cognitive.sum
old: 4.0
new: 0.0
path: .spaces[5].metrics.cognitive.average
old: 4.0
new: 0.0

### Code

    NS_SizeOfIncludingThisXPTCallStub(const nsISomeInterface* aStub,
                                      mozilla::MallocSizeOf aMallocSizeOf) {
      // We could cast aStub to nsXPTCStubBase, but that class doesn't seem to own
      // anything, so just measure the size of the object itself.
      return aMallocSizeOf(aStub);
    }

## Minimal test - lines (14, 22)

path: .spaces[0].metrics.cyclomatic.average
old: 1.0
new: 2.0
path: .spaces[0].metrics.mi.mi_sei
old: 84.64138980866011
new: 78.6928151791031
path: .spaces[0].metrics.mi.mi_original
old: 110.99962053185496
new: 106.8763827990271
path: .spaces[0].metrics.mi.mi_visual_studio
old: 64.91205879055846
new: 62.500808654401816
path: .spaces[0].metrics.nargs.average
old: 3.0
new: 2.0
path: .spaces[0].metrics.nargs.sum
old: 3.0
new: 2.0
path: .spaces[0].metrics.halstead.effort
old: 1837.288530835964
new: 2190.796611963594
path: .spaces[0].metrics.halstead.level
old: 0.11904761904761904
new: 0.10084033613445378
path: .spaces[0].metrics.halstead.n2
old: 15.0
new: 12.0
path: .spaces[0].metrics.halstead.purity_ratio
old: 2.2091936726691666
new: 2.049415296116177
path: .spaces[0].metrics.halstead.vocabulary
old: 27.0
new: 26.0
path: .spaces[0].metrics.halstead.time
old: 102.07158504644244
new: 121.71092288686631
path: .spaces[0].metrics.halstead.difficulty
old: 8.4
new: 9.916666666666666
path: .spaces[0].metrics.halstead.bugs
old: 0.050003106698526825
new: 0.05622724254715296
path: .spaces[0].metrics.halstead.volume
old: 218.7248250995195
new: 220.92066675263132
path: .spaces[0].metrics.halstead.N2
old: 21.0
new: 17.0
path: .spaces[0].metrics.halstead.estimated_program_length
old: 101.62290894278166
new: 96.32251891746031
path: .spaces[0].metrics.halstead.n1
old: 12.0
new: 14.0
path: .spaces[0].metrics.halstead.length
old: 46.0
new: 47.0
path: .spaces[0].metrics.halstead.N1
old: 25.0
new: 30.0
path: .spaces[0].metrics.loc.lloc
old: 1.0
new: 5.0
path: .spaces[0].metrics.loc.ploc
old: 7.0
new: 8.0
path: .spaces[0].metrics.loc.sloc
old: 7.0
new: 9.0
path: .spaces[0].metrics.loc.blank
old: 0.0
new: 1.0
path: .spaces[0].metrics.nexits.average
old: 1.0
new: 2.0
path: .spaces[0].metrics.nexits.sum
old: 1.0
new: 2.0
path: .spaces[0].metrics.cognitive.sum
old: 0.0
new: 1.0
path: .spaces[0].metrics.cognitive.average
old: 0.0
new: 1.0

### Code

    nsXPTCStubBase::QueryInterface(REFNSIID aIID, void** aInstancePtr) {
      if (aIID.Equals(mEntry->IID())) {
        NS_ADDREF_THIS();
        *aInstancePtr = static_cast(this);
        return NS_OK;
      }

      return mOuter->QueryInterface(aIID, aInstancePtr);
    }

## Minimal test - lines (45, 48)

path: .spaces[4].metrics.nargs.average
old: 5.0
new: 1.0
path: .spaces[4].metrics.nargs.sum
old: 5.0
new: 1.0
path: .spaces[4].metrics.mi.mi_sei
old: 61.72061354153861
new: 105.15125244839123
path: .spaces[4].metrics.mi.mi_visual_studio
old: 55.62113981640607
new: 73.26698838756
path: .spaces[4].metrics.mi.mi_original
old: 95.1121490860544
new: 125.2865501427276
path: .spaces[4].metrics.nexits.sum
old: 1.0
new: 0.0
path: .spaces[4].metrics.nexits.average
old: 1.0
new: 0.0
path: .spaces[4].metrics.halstead.bugs
old: 0.11477599873990792
new: 0.021070601904317903
path: .spaces[4].metrics.halstead.level
old: 0.08385093167701864
new: 0.16666666666666666
path: .spaces[4].metrics.halstead.effort
old: 6389.376835137122
new: 502.5708497116037
path: .spaces[4].metrics.halstead.N2
old: 46.0
new: 9.0
path: .spaces[4].metrics.halstead.vocabulary
old: 41.0
new: 14.0
path: .spaces[4].metrics.halstead.N1
old: 54.0
new: 13.0
path: .spaces[4].metrics.halstead.length
old: 100.0
new: 22.0
path: .spaces[4].metrics.halstead.time
old: 354.9653797298401
new: 27.920602761755763
path: .spaces[4].metrics.halstead.n1
old: 14.0
new: 8.0
path: .spaces[4].metrics.halstead.estimated_program_length
old: 181.6849314672201
new: 39.50977500432694
path: .spaces[4].metrics.halstead.volume
old: 535.7552004618084
new: 83.76180828526729
path: .spaces[4].metrics.halstead.purity_ratio
old: 1.8168493146722011
new: 1.7958988638330426
path: .spaces[4].metrics.halstead.n2
old: 27.0
new: 6.0
path: .spaces[4].metrics.halstead.difficulty
old: 11.925925925925926
new: 6.0
path: .spaces[4].metrics.cyclomatic.sum
old: 2.0
new: 1.0
path: .spaces[4].metrics.loc.blank
old: 1.0
new: 0.0
path: .spaces[4].metrics.loc.lloc
old: 4.0
new: 1.0
path: .spaces[4].metrics.loc.ploc
old: 13.0
new: 4.0
path: .spaces[4].metrics.loc.sloc
old: 14.0
new: 4.0

### Code

    NS_DestroyXPTCallStub(nsISomeInterface* aStub) {
      nsXPTCStubBase* stub = static_cast(aStub);
      delete (stub);
    }

## Minimal test - lines (28, 28)

path: .spaces[2].metrics.cyclomatic.sum
old: 2.0
new: 1.0
path: .spaces[2].metrics.halstead.N1
old: 15.0
new: 7.0
path: .spaces[2].metrics.halstead.vocabulary
old: 18.0
new: 8.0
path: .spaces[2].metrics.halstead.difficulty
old: 5.6
new: 4.5
path: .spaces[2].metrics.halstead.length
old: 29.0
new: 10.0
path: .spaces[2].metrics.halstead.level
old: 0.17857142857142858
new: 0.2222222222222222
path: .spaces[2].metrics.halstead.n2
old: 10.0
new: 2.0
path: .spaces[2].metrics.halstead.bugs
old: 0.02570523574759192
new: 0.008772053214638597
path: .spaces[2].metrics.halstead.n1
old: 8.0
new: 6.0
path: .spaces[2].metrics.halstead.purity_ratio
old: 1.9730786534094351
new: 1.7509775004326935
path: .spaces[2].metrics.halstead.time
old: 37.621990013012855
new: 7.5
path: .spaces[2].metrics.halstead.N2
old: 14.0
new: 3.0
path: .spaces[2].metrics.halstead.volume
old: 120.92782504182703
new: 30.0
path: .spaces[2].metrics.halstead.effort
old: 677.1958202342314
new: 135.0
path: .spaces[2].metrics.halstead.estimated_program_length
old: 57.219280948873624
new: 17.509775004326936
path: .spaces[2].metrics.mi.mi_original
old: 116.57848842058246
new: 153.0837736153568
path: .spaces[2].metrics.mi.mi_sei
old: 92.68999484550196
new: 145.25416890283572
path: .spaces[2].metrics.mi.mi_visual_studio
old: 68.17455463191956
new: 89.52267462886361
path: .spaces[2].metrics.nargs.sum
old: 3.0
new: 0.0
path: .spaces[2].metrics.nargs.average
old: 3.0
new: 0.0
path: .spaces[2].metrics.loc.ploc
old: 6.0
new: 1.0
path: .spaces[2].metrics.loc.sloc
old: 6.0
new: 1.0

### Code

    nsXPTCStubBase::Release() { return mOuter->Release(); }

## Minimal test - lines (25, 25)

path: .spaces[1].metrics.halstead.n1
old: 17.0
new: 6.0
path: .spaces[1].metrics.halstead.time
old: 778.0352311720633
new: 7.5
path: .spaces[1].metrics.halstead.effort
old: 14004.63416109714
new: 135.0
path: .spaces[1].metrics.halstead.level
old: 0.04793028322440087
new: 0.2222222222222222
path: .spaces[1].metrics.halstead.N1
old: 73.0
new: 7.0
path: .spaces[1].metrics.halstead.N2
old: 54.0
new: 3.0
path: .spaces[1].metrics.halstead.difficulty
old: 20.863636363636363
new: 4.5
path: .spaces[1].metrics.halstead.bugs
old: 0.19366891709341189
new: 0.008772053214638597
path: .spaces[1].metrics.halstead.estimated_program_length
old: 167.5943639112763
new: 17.509775004326936
path: .spaces[1].metrics.halstead.n2
old: 22.0
new: 2.0
path: .spaces[1].metrics.halstead.volume
old: 671.2460817955056
new: 30.0
path: .spaces[1].metrics.halstead.length
old: 127.0
new: 10.0
path: .spaces[1].metrics.halstead.vocabulary
old: 39.0
new: 8.0
path: .spaces[1].metrics.halstead.purity_ratio
old: 1.319640660718711
new: 1.7509775004326935
path: .spaces[1].metrics.loc.ploc
old: 23.0
new: 1.0
path: .spaces[1].metrics.loc.lloc
old: 12.0
new: 1.0
path: .spaces[1].metrics.loc.sloc
old: 23.0
new: 1.0
path: .spaces[1].metrics.cognitive.average
old: 1.0
new: 0.0
path: .spaces[1].metrics.cognitive.sum
old: 1.0
new: 0.0
path: .spaces[1].metrics.nargs.average
old: 4.0
new: 0.0
path: .spaces[1].metrics.nargs.sum
old: 4.0
new: 0.0
path: .spaces[1].metrics.mi.mi_original
old: 85.20748749707238
new: 153.0837736153568
path: .spaces[1].metrics.mi.mi_visual_studio
old: 49.82894005676747
new: 89.52267462886361
path: .spaces[1].metrics.mi.mi_sei
old: 47.736666963644225
new: 145.25416890283572
path: .spaces[1].metrics.cyclomatic.average
old: 2.5
new: 1.0
path: .spaces[1].metrics.cyclomatic.sum
old: 5.0
new: 1.0

### Code

    nsXPTCStubBase::AddRef() { return mOuter->AddRef(); }