# Global Metrics

path: .metrics.halstead.bugs
old: 1.0430367976615296
new: 0.11910956997653951
path: .metrics.halstead.level
old: 0.020930232558139535
new: 0.08405797101449276
path: .metrics.halstead.length
old: 590.0
new: 104.0
path: .metrics.halstead.N2
old: 258.0
new: 46.0
path: .metrics.halstead.n1
old: 20.0
new: 15.0
path: .metrics.halstead.purity_ratio
old: 0.6732245542619908
new: 1.918123151854109
path: .metrics.halstead.difficulty
old: 47.77777777777778
new: 11.89655172413793
path: .metrics.halstead.effort
old: 175037.5909844516
new: 6754.6347060933185
path: .metrics.halstead.volume
old: 3663.57748572108
new: 567.7808883382789
path: .metrics.halstead.N1
old: 332.0
new: 58.0
path: .metrics.halstead.n2
old: 54.0
new: 29.0
path: .metrics.halstead.vocabulary
old: 74.0
new: 44.0
path: .metrics.halstead.time
old: 9724.310610247312
new: 375.25748367185105
path: .metrics.halstead.estimated_program_length
old: 397.20248701457456
new: 199.48480779282735
path: .metrics.cognitive.sum
old: 10.0
new: 1.0
path: .metrics.cognitive.average
old: 0.8333333333333334
new: 0.3333333333333333
path: .metrics.nargs.average
old: 2.4166666666666665
new: 1.0
path: .metrics.nargs.sum
old: 29.0
new: 3.0
path: .metrics.mi.mi_sei
old: 10.252518666931708
new: 69.85818631945594
path: .metrics.mi.mi_visual_studio
old: 20.308586044622153
new: 40.94350755775419
path: .metrics.mi.mi_original
old: 34.72768213630388
new: 70.01339792375965
path: .metrics.nom.functions
old: 12.0
new: 3.0
path: .metrics.nom.total
old: 12.0
new: 3.0
path: .metrics.nexits.sum
old: 14.0
new: 3.0
path: .metrics.nexits.average
old: 1.1666666666666667
new: 1.0
path: .metrics.cyclomatic.sum
old: 30.0
new: 5.0
path: .metrics.cyclomatic.average
old: 2.3076923076923075
new: 1.25
path: .metrics.loc.ploc
old: 140.0
new: 21.0
path: .metrics.loc.lloc
old: 50.0
new: 11.0
path: .metrics.loc.cloc
old: 45.0
new: 30.0
path: .metrics.loc.sloc
old: 211.0
new: 62.0
path: .metrics.loc.blank
old: 26.0
new: 11.0

# Spaces Data

## Minimal test - lines (52, 52)

path: .spaces[1].metrics.halstead.N1
old: 7.0
new: 5.0
path: .spaces[1].metrics.halstead.purity_ratio
old: 1.9591479170272448
new: 1.5943609377704335
path: .spaces[1].metrics.halstead.difficulty
old: 3.75
new: 2.0
path: .spaces[1].metrics.halstead.estimated_program_length
old: 23.509775004326936
new: 12.754887502163468
path: .spaces[1].metrics.halstead.bugs
old: 0.009388882548620756
new: 0.00421201861424495
path: .spaces[1].metrics.halstead.level
old: 0.26666666666666666
new: 0.5
path: .spaces[1].metrics.halstead.time
old: 8.304820237218406
new: 2.495426597384537
path: .spaces[1].metrics.halstead.n2
old: 4.0
new: 3.0
path: .spaces[1].metrics.halstead.effort
old: 149.4867642699313
new: 44.91767875292167
path: .spaces[1].metrics.halstead.n1
old: 6.0
new: 4.0
path: .spaces[1].metrics.halstead.vocabulary
old: 10.0
new: 7.0
path: .spaces[1].metrics.halstead.volume
old: 39.86313713864835
new: 22.458839376460833
path: .spaces[1].metrics.halstead.N2
old: 5.0
new: 3.0
path: .spaces[1].metrics.halstead.length
old: 12.0
new: 8.0
path: .spaces[1].metrics.loc.ploc
old: 5.0
new: 1.0
path: .spaces[1].metrics.loc.sloc
old: 5.0
new: 1.0
path: .spaces[1].metrics.mi.mi_sei
old: 105.50645146172272
new: 147.42610035996177
path: .spaces[1].metrics.mi.mi_original
old: 125.53275533735598
new: 154.58924178123317
path: .spaces[1].metrics.mi.mi_visual_studio
old: 73.41096803354151
new: 90.4030653691422
path: .spaces[1].metrics.nargs.average
old: 1.0
new: 0.0
path: .spaces[1].metrics.nargs.sum
old: 1.0
new: 0.0

### Code

    static void nsAppShellShutdown() { NS_RELEASE(sAppShell); }

## Minimal test - lines (34, 50)

path: .spaces[0].metrics.nexits.average
old: 4.0
new: 2.0
path: .spaces[0].metrics.nexits.sum
old: 4.0
new: 2.0
path: .spaces[0].metrics.mi.mi_sei
old: 85.58057289114743
new: 100.36731575406772
path: .spaces[0].metrics.mi.mi_original
old: 94.74348935613968
new: 96.08875074441713
path: .spaces[0].metrics.mi.mi_visual_studio
old: 55.40554933107583
new: 56.19225189731995
path: .spaces[0].metrics.cyclomatic.average
old: 5.0
new: 2.0
path: .spaces[0].metrics.cyclomatic.sum
old: 5.0
new: 2.0
path: .spaces[0].metrics.loc.lloc
old: 11.0
new: 7.0
path: .spaces[0].metrics.loc.ploc
old: 16.0
new: 9.0
path: .spaces[0].metrics.loc.sloc
old: 19.0
new: 17.0
path: .spaces[0].metrics.loc.cloc
old: 2.0
new: 5.0
path: .spaces[0].metrics.loc.blank
old: 1.0
new: 3.0
path: .spaces[0].metrics.halstead.N1
old: 29.0
new: 30.0
path: .spaces[0].metrics.halstead.effort
old: 1047.3785759793543
new: 2364.3678104507844
path: .spaces[0].metrics.halstead.volume
old: 194.51316411045156
new: 242.49926261033687
path: .spaces[0].metrics.halstead.time
old: 58.1876986655197
new: 131.3537672472658
path: .spaces[0].metrics.halstead.difficulty
old: 5.384615384615385
new: 9.75
path: .spaces[0].metrics.halstead.estimated_program_length
old: 81.32499728470782
new: 101.40868524464064
path: .spaces[0].metrics.halstead.vocabulary
old: 23.0
new: 27.0
path: .spaces[0].metrics.halstead.level
old: 0.1857142857142857
new: 0.10256410256410256
path: .spaces[0].metrics.halstead.purity_ratio
old: 1.891279006621112
new: 1.9884055930321696
path: .spaces[0].metrics.halstead.n1
old: 10.0
new: 13.0
path: .spaces[0].metrics.halstead.n2
old: 13.0
new: 14.0
path: .spaces[0].metrics.halstead.N2
old: 14.0
new: 21.0
path: .spaces[0].metrics.halstead.bugs
old: 0.03437804713907047
new: 0.059159174322834227
path: .spaces[0].metrics.halstead.length
old: 43.0
new: 51.0

### Code

    static nsresult nsAppShellInit() {
      NS_ASSERTION(!sAppShell, "already initialized");

      sAppShell = new nsAppShell();
      if (!sAppShell) return NS_ERROR_OUT_OF_MEMORY;
      NS_ADDREF(sAppShell);

      nsresult rv = static_cast(sAppShell)->Init();
      // If we somehow failed to initialize the appshell, it's extremely likely
      // that we are sufficiently hosed that continuing on is just going to lead
      // to bad things later.  By crashing early here, the crash report will
      // potentially contain a little more insight into what's going wrong than
      // if we waited for a crash further down the line.  See also bug 1545381.
      MOZ_RELEASE_ASSERT(NS_SUCCEEDED(rv));

      return NS_OK;
    }

## Minimal test - lines (54, 60)

path: .spaces[2].metrics.nexits.average
old: 0.0
new: 1.0
path: .spaces[2].metrics.nexits.sum
old: 0.0
new: 1.0
path: .spaces[2].metrics.loc.blank
old: 0.0
new: 1.0
path: .spaces[2].metrics.loc.sloc
old: 6.0
new: 7.0
path: .spaces[2].metrics.loc.lloc
old: 1.0
new: 3.0
path: .spaces[2].metrics.mi.mi_visual_studio
old: 68.69238169352487
new: 65.82262964934561
path: .spaces[2].metrics.mi.mi_original
old: 117.46397269592752
new: 112.556696700381
path: .spaces[2].metrics.mi.mi_sei
old: 93.86565875892292
new: 86.78595601587449
path: .spaces[2].metrics.nargs.sum
old: 4.0
new: 3.0
path: .spaces[2].metrics.nargs.average
old: 4.0
new: 3.0
path: .spaces[2].metrics.halstead.bugs
old: 0.020427161279358765
new: 0.03764834896324941
path: .spaces[2].metrics.halstead.n1
old: 6.0
new: 10.0
path: .spaces[2].metrics.halstead.time
old: 26.651484454403228
new: 66.68501911202995
path: .spaces[2].metrics.halstead.volume
old: 106.60593781761293
new: 169.4584015082173
path: .spaces[2].metrics.halstead.level
old: 0.2222222222222222
new: 0.1411764705882353
path: .spaces[2].metrics.halstead.difficulty
old: 4.5
new: 7.083333333333333
path: .spaces[2].metrics.halstead.effort
old: 479.7267201792581
new: 1200.3303440165391
path: .spaces[2].metrics.halstead.N1
old: 16.0
new: 21.0
path: .spaces[2].metrics.halstead.estimated_program_length
old: 39.50977500432694
new: 76.2388309575275
path: .spaces[2].metrics.halstead.N2
old: 12.0
new: 17.0
path: .spaces[2].metrics.halstead.n2
old: 8.0
new: 12.0
path: .spaces[2].metrics.halstead.vocabulary
old: 14.0
new: 22.0
path: .spaces[2].metrics.halstead.length
old: 28.0
new: 38.0
path: .spaces[2].metrics.halstead.purity_ratio
old: 1.4110633930116765
new: 2.006285025198092

### Code

    nsresult nsAppShellConstructor(nsISupports* outer, const nsIID& iid,
                                   void** result) {
      NS_ENSURE_TRUE(!outer, NS_ERROR_NO_AGGREGATION);
      NS_ENSURE_TRUE(sAppShell, NS_ERROR_NOT_INITIALIZED);

      return sAppShell->QueryInterface(iid, result);
    }