# Global Metrics

path: .metrics.nom.total
old: 11.0
new: 2.0
path: .metrics.nom.closures
old: 0.0
new: 1.0
path: .metrics.nom.functions
old: 11.0
new: 1.0
path: .metrics.cognitive.sum
old: 15.0
new: 1.0
path: .metrics.cognitive.average
old: 1.3636363636363635
new: 0.5
path: .metrics.nargs.sum
old: 3.0
new: 1.0
path: .metrics.nargs.average
old: 0.2727272727272727
new: 0.5
path: .metrics.nexits.average
old: 0.5454545454545454
new: 0.5
path: .metrics.nexits.sum
old: 6.0
new: 1.0
path: .metrics.mi.mi_original
old: 39.63541511059792
new: 74.76626118044774
path: .metrics.mi.mi_sei
old: 26.00126778352422
new: 65.15500848985366
path: .metrics.mi.mi_visual_studio
old: 23.17860532783504
new: 43.7229597546478
path: .metrics.cyclomatic.sum
old: 31.0
new: 5.0
path: .metrics.cyclomatic.average
old: 2.066666666666667
new: 2.5
path: .metrics.loc.cloc
old: 70.0
new: 10.0
path: .metrics.loc.sloc
old: 177.0
new: 48.0
path: .metrics.loc.ploc
old: 90.0
new: 28.0
path: .metrics.loc.blank
old: 17.0
new: 10.0
path: .metrics.loc.lloc
old: 31.0
new: 6.0
path: .metrics.halstead.length
old: 393.0
new: 92.0
path: .metrics.halstead.time
old: 6550.0
new: 325.2187028998907
path: .metrics.halstead.difficulty
old: 50.0
new: 11.586206896551724
path: .metrics.halstead.n1
old: 25.0
new: 16.0
path: .metrics.halstead.vocabulary
old: 64.0
new: 45.0
path: .metrics.halstead.volume
old: 2358.0
new: 505.2504848623301
path: .metrics.halstead.level
old: 0.02
new: 0.08630952380952381
path: .metrics.halstead.N1
old: 237.0
new: 50.0
path: .metrics.halstead.N2
old: 156.0
new: 42.0
path: .metrics.halstead.bugs
old: 0.8014712509504675
new: 0.10827065336969974
path: .metrics.halstead.effort
old: 117900.0
new: 5853.936652198032
path: .metrics.halstead.n2
old: 39.0
new: 29.0
path: .metrics.halstead.purity_ratio
old: 0.8199162627989716
new: 2.226972270203256
path: .metrics.halstead.estimated_program_length
old: 322.2270912799958
new: 204.88144885869957

# Spaces Data

## Minimal test - lines (20, 32)

path: .spaces[0].metrics.halstead.difficulty
old: 26.526315789473685
new: 8.470588235294118
path: .spaces[0].metrics.halstead.N1
old: 90.0
new: 30.0
path: .spaces[0].metrics.halstead.N2
old: 56.0
new: 24.0
path: .spaces[0].metrics.halstead.n1
old: 18.0
new: 12.0
path: .spaces[0].metrics.halstead.effort
old: 20175.390339812668
new: 2222.097659888941
path: .spaces[0].metrics.halstead.length
old: 146.0
new: 54.0
path: .spaces[0].metrics.halstead.bugs
old: 0.2470358839184489
new: 0.05676154045472218
path: .spaces[0].metrics.halstead.volume
old: 760.5801913818267
new: 262.3309737368889
path: .spaces[0].metrics.halstead.time
old: 1120.8550188784816
new: 123.44986999383006
path: .spaces[0].metrics.halstead.level
old: 0.037698412698412696
new: 0.11805555555555557
path: .spaces[0].metrics.halstead.vocabulary
old: 37.0
new: 29.0
path: .spaces[0].metrics.halstead.n2
old: 19.0
new: 17.0
path: .spaces[0].metrics.halstead.purity_ratio
old: 1.0669128272697928
new: 2.0834521909242523
path: .spaces[0].metrics.halstead.estimated_program_length
old: 155.76927278138973
new: 112.50641830990963
path: .spaces[0].metrics.nargs.average
old: 0.3333333333333333
new: 1.0
path: .spaces[0].metrics.nargs.sum
old: 2.0
new: 1.0
path: .spaces[0].metrics.cognitive.sum
old: 3.0
new: 1.0
path: .spaces[0].metrics.cognitive.average
old: 0.5
new: 1.0
path: .spaces[0].metrics.mi.mi_visual_studio
old: 39.61029190647807
new: 58.49465742152963
path: .spaces[0].metrics.mi.mi_original
old: 67.73359916007749
new: 100.02586419081568
path: .spaces[0].metrics.mi.mi_sei
old: 65.87094303190835
new: 89.63809811694098
path: .spaces[0].metrics.loc.cloc
old: 25.0
new: 1.0
path: .spaces[0].metrics.loc.lloc
old: 9.0
new: 4.0
path: .spaces[0].metrics.loc.sloc
old: 58.0
new: 13.0
path: .spaces[0].metrics.loc.blank
old: 5.0
new: 2.0
path: .spaces[0].metrics.loc.ploc
old: 28.0
new: 10.0
path: .spaces[0].metrics.cyclomatic.sum
old: 13.0
new: 2.0
path: .spaces[0].metrics.cyclomatic.average
old: 1.625
new: 2.0
path: .spaces[0].metrics.nom.total
old: 6.0
new: 1.0
path: .spaces[0].metrics.nom.functions
old: 6.0
new: 1.0
path: .spaces[0].metrics.nexits.sum
old: 4.0
new: 0.0
path: .spaces[0].metrics.nexits.average
old: 0.6666666666666666
new: 0.0

### Code

    void nsObjCExceptionLog(NSException* aException) {
      NSLog(@"Mozilla has caught an Obj-C exception [%@: %@]", [aException name], [aException reason]);

      // Attach exception info to the crash report.
      nsCOMPtr crashReporter = do_GetService("@mozilla.org/toolkit/crash-reporter;1");
      if (crashReporter) {
        crashReporter->AppendObjCExceptionInfoToAppNotes(static_cast(aException));
      }

    #ifdef DEBUG
      NSLog(@"Stack trace:\n%@", [aException callStackSymbols]);
    #endif
    }