# Global Metrics

path: .metrics.nexits.sum
old: 19.0
new: 72.0
path: .metrics.nexits.average
old: 0.7916666666666666
new: 0.5625
path: .metrics.cyclomatic.average
old: 1.0
new: 1.1216216216216215
path: .metrics.cyclomatic.sum
old: 31.0
new: 166.0
path: .metrics.nargs.sum
old: 14.0
new: 98.0
path: .metrics.nargs.average
old: 0.5833333333333334
new: 0.765625
path: .metrics.cognitive.average
old: 0.0
new: 0.015625
path: .metrics.cognitive.sum
old: 0.0
new: 2.0
path: .metrics.loc.cloc
old: 12.0
new: 131.0
path: .metrics.loc.lloc
old: 42.0
new: 81.0
path: .metrics.loc.ploc
old: 115.0
new: 379.0
path: .metrics.loc.sloc
old: 153.0
new: 624.0
path: .metrics.loc.blank
old: 26.0
new: 114.0
path: .metrics.mi.mi_sei
old: 7.805558631845425
new: -56.61496523407407
path: .metrics.mi.mi_visual_studio
old: 24.049831270377982
new: 0.0
path: .metrics.mi.mi_original
old: 41.12521147234635
new: -21.072449682086187
path: .metrics.nom.total
old: 24.0
new: 128.0
path: .metrics.nom.functions
old: 24.0
new: 128.0
path: .metrics.halstead.bugs
old: 1.3170785208661968
new: 4.291005699655837
path: .metrics.halstead.n2
old: 22.0
new: 97.0
path: .metrics.halstead.purity_ratio
old: 0.3569556238061272
new: 0.3719537162664646
path: .metrics.halstead.volume
old: 2787.8281075766195
new: 13955.347149582858
path: .metrics.halstead.length
old: 517.0
new: 2017.0
path: .metrics.halstead.N1
old: 321.0
new: 1171.0
path: .metrics.halstead.level
old: 0.011224489795918368
new: 0.009554767533490938
path: .metrics.halstead.N2
old: 196.0
new: 846.0
path: .metrics.halstead.effort
old: 248370.14049318977
new: 1460563.7552841771
path: .metrics.halstead.time
old: 13798.34113851054
new: 81142.43084912095
path: .metrics.halstead.vocabulary
old: 42.0
new: 121.0
path: .metrics.halstead.estimated_program_length
old: 184.54605750776776
new: 750.2306457094592
path: .metrics.halstead.n1
old: 20.0
new: 24.0
path: .metrics.halstead.difficulty
old: 89.0909090909091
new: 104.659793814433

# Spaces Data

## Minimal test - lines (29, 41)

path: .spaces[0].metrics.mi.mi_visual_studio
old: 25.315287281523773
new: 59.78694793197525
path: .spaces[0].metrics.mi.mi_sei
old: -0.8887631236054148
new: 92.92800967582669
path: .spaces[0].metrics.mi.mi_original
old: 43.28914125140565
new: 102.23568096367768
path: .spaces[0].metrics.loc.blank
old: 26.0
new: 4.0
path: .spaces[0].metrics.loc.ploc
old: 109.0
new: 8.0
path: .spaces[0].metrics.loc.lloc
old: 42.0
new: 2.0
path: .spaces[0].metrics.loc.cloc
old: 2.0
new: 1.0
path: .spaces[0].metrics.loc.sloc
old: 137.0
new: 13.0
path: .spaces[0].metrics.nexits.average
old: 0.7916666666666666
new: 1.0
path: .spaces[0].metrics.nexits.sum
old: 19.0
new: 2.0
path: .spaces[0].metrics.cyclomatic.sum
old: 30.0
new: 3.0
path: .spaces[0].metrics.halstead.n1
old: 20.0
new: 8.0
path: .spaces[0].metrics.halstead.N2
old: 192.0
new: 17.0
path: .spaces[0].metrics.halstead.bugs
old: 1.4061795217032214
new: 0.04548550497800145
path: .spaces[0].metrics.halstead.length
old: 513.0
new: 42.0
path: .spaces[0].metrics.halstead.level
old: 0.009895833333333331
new: 0.10294117647058824
path: .spaces[0].metrics.halstead.n2
old: 19.0
new: 7.0
path: .spaces[0].metrics.halstead.estimated_program_length
old: 167.14918465317538
new: 43.65148445440323
path: .spaces[0].metrics.halstead.purity_ratio
old: 0.3258268706689579
new: 1.0393210584381722
path: .spaces[0].metrics.halstead.time
old: 15221.958390323278
new: 88.55618683379309
path: .spaces[0].metrics.halstead.vocabulary
old: 39.0
new: 15.0
path: .spaces[0].metrics.halstead.effort
old: 273995.251025819
new: 1594.0113630082756
path: .spaces[0].metrics.halstead.difficulty
old: 101.05263157894736
new: 9.714285714285714
path: .spaces[0].metrics.halstead.N1
old: 321.0
new: 25.0
path: .spaces[0].metrics.halstead.volume
old: 2711.4113382763335
new: 164.0894050155578
path: .spaces[0].metrics.nargs.sum
old: 14.0
new: 2.0
path: .spaces[0].metrics.nargs.average
old: 0.5833333333333334
new: 1.0
path: .spaces[0].metrics.nom.functions
old: 24.0
new: 2.0
path: .spaces[0].metrics.nom.total
old: 24.0
new: 2.0

### Code

    namespace mozilla {

    // These are defined analogously to the HashString overloads in mfbt.

    inline uint32_t HashString(const nsAString& aStr) {
      return HashString(aStr.BeginReading(), aStr.Length());
    }

    inline uint32_t HashString(const nsACString& aStr) {
      return HashString(aStr.BeginReading(), aStr.Length());
    }

    }  // namespace mozilla

## Minimal test - lines (33, 35)

path: .spaces[0].spaces[0].metrics.nexits.average
old: 0.7916666666666666
new: 1.0
path: .spaces[0].spaces[0].metrics.nexits.sum
old: 19.0
new: 1.0
path: .spaces[0].spaces[0].metrics.mi.mi_sei
old: -2.889903365531243
new: 112.80355848008944
path: .spaces[0].spaces[0].metrics.mi.mi_original
old: 43.81469387576652
new: 130.59072449338103
path: .spaces[0].spaces[0].metrics.mi.mi_visual_studio
old: 25.622627997524283
new: 76.36884473297137
path: .spaces[0].spaces[0].metrics.halstead.level
old: 0.009424083769633508
new: 0.15625
path: .spaces[0].spaces[0].metrics.halstead.n2
old: 18.0
new: 5.0
path: .spaces[0].spaces[0].metrics.halstead.N1
old: 320.0
new: 12.0
path: .spaces[0].spaces[0].metrics.halstead.difficulty
old: 106.11111111111111
new: 6.4
path: .spaces[0].spaces[0].metrics.halstead.volume
old: 2681.690959369672
new: 74.00879436282185
path: .spaces[0].spaces[0].metrics.halstead.N2
old: 191.0
new: 8.0
path: .spaces[0].spaces[0].metrics.halstead.time
old: 15808.733741963188
new: 26.31423799566999
path: .spaces[0].spaces[0].metrics.halstead.bugs
old: 1.4420881405216717
new: 0.020254472988841275
path: .spaces[0].spaces[0].metrics.halstead.effort
old: 284557.2073553374
new: 473.65628392205986
path: .spaces[0].spaces[0].metrics.halstead.length
old: 511.0
new: 20.0
path: .spaces[0].spaces[0].metrics.halstead.n1
old: 20.0
new: 8.0
path: .spaces[0].spaces[0].metrics.halstead.vocabulary
old: 38.0
new: 13.0
path: .spaces[0].spaces[0].metrics.halstead.purity_ratio
old: 0.3160415106139116
new: 1.7804820237218404
path: .spaces[0].spaces[0].metrics.halstead.estimated_program_length
old: 161.49721192370885
new: 35.60964047443681
path: .spaces[0].spaces[0].metrics.loc.blank
old: 27.0
new: 0.0
path: .spaces[0].spaces[0].metrics.loc.sloc
old: 135.0
new: 3.0
path: .spaces[0].spaces[0].metrics.loc.cloc
old: 1.0
new: 0.0
path: .spaces[0].spaces[0].metrics.loc.lloc
old: 42.0
new: 1.0
path: .spaces[0].spaces[0].metrics.loc.ploc
old: 107.0
new: 3.0
path: .spaces[0].spaces[0].metrics.cyclomatic.sum
old: 29.0
new: 1.0
path: .spaces[0].spaces[0].metrics.nargs.sum
old: 14.0
new: 1.0
path: .spaces[0].spaces[0].metrics.nargs.average
old: 0.5833333333333334
new: 1.0
path: .spaces[0].spaces[0].metrics.nom.total
old: 24.0
new: 1.0
path: .spaces[0].spaces[0].metrics.nom.functions
old: 24.0
new: 1.0

### Code

    inline uint32_t HashString(const nsAString& aStr) {
      return HashString(aStr.BeginReading(), aStr.Length());
    }