# Global Metrics

path: .metrics.nargs.average
old: 5.0
new: 0.0
path: .metrics.nargs.sum
old: 20.0
new: 0.0
path: .metrics.cognitive.sum
old: 5.0
new: 0.0
path: .metrics.cognitive.average
old: 1.25
new: 0.0
path: .metrics.loc.cloc
old: 4.0
new: 50.0
path: .metrics.loc.ploc
old: 65.0
new: 21.0
path: .metrics.loc.sloc
old: 80.0
new: 85.0
path: .metrics.loc.blank
old: 11.0
new: 14.0
path: .metrics.loc.lloc
old: 20.0
new: 7.0
path: .metrics.nexits.sum
old: 6.0
new: 0.0
path: .metrics.nexits.average
old: 1.5
new: 0.0
path: .metrics.mi.mi_original
old: 58.73677401019928
new: 69.28167790547484
path: .metrics.mi.mi_sei
old: 27.03276963093294
new: 70.9414361396197
path: .metrics.mi.mi_visual_studio
old: 34.34899064923935
new: 40.515601114312766
path: .metrics.halstead.effort
old: 41342.42888364581
new: 1526.794027040094
path: .metrics.halstead.level
old: 0.04351851851851852
new: 0.175
path: .metrics.halstead.difficulty
old: 22.97872340425532
new: 5.714285714285714
path: .metrics.halstead.volume
old: 1799.161256973475
new: 267.18895473201644
path: .metrics.halstead.vocabulary
old: 63.0
new: 29.0
path: .metrics.halstead.n2
old: 47.0
new: 21.0
path: .metrics.halstead.purity_ratio
old: 1.0799524120559765
new: 2.113430288697345
path: .metrics.halstead.N1
old: 166.0
new: 25.0
path: .metrics.halstead.N2
old: 135.0
new: 30.0
path: .metrics.halstead.bugs
old: 0.39854381216986107
new: 0.04419763660545251
path: .metrics.halstead.n1
old: 16.0
new: 8.0
path: .metrics.halstead.time
old: 2296.8016046469893
new: 84.82189039111634
path: .metrics.halstead.length
old: 301.0
new: 55.0
path: .metrics.halstead.estimated_program_length
old: 325.06567602884894
new: 116.23866587835396
path: .metrics.cyclomatic.average
old: 2.0
new: 1.0
path: .metrics.cyclomatic.sum
old: 10.0
new: 3.0
path: .metrics.nom.functions
old: 4.0
new: 1.0
path: .metrics.nom.total
old: 4.0
new: 1.0

# Spaces Data

## Minimal test - lines (40, 79)

path: .spaces[0].metrics.halstead.estimated_program_length
old: 163.3420689261142
new: 82.60335893412778
path: .spaces[0].metrics.halstead.length
old: 100.0
new: 41.0
path: .spaces[0].metrics.halstead.volume
old: 524.7927513443585
new: 185.4660401983375
path: .spaces[0].metrics.halstead.level
old: 0.08163265306122448
new: 0.1875
path: .spaces[0].metrics.halstead.n2
old: 24.0
new: 15.0
path: .spaces[0].metrics.halstead.N2
old: 42.0
new: 20.0
path: .spaces[0].metrics.halstead.difficulty
old: 12.25
new: 5.333333333333333
path: .spaces[0].metrics.halstead.N1
old: 58.0
new: 21.0
path: .spaces[0].metrics.halstead.n1
old: 14.0
new: 8.0
path: .spaces[0].metrics.halstead.purity_ratio
old: 1.633420689261142
new: 2.0147160715640924
path: .spaces[0].metrics.halstead.time
old: 357.1506224426884
new: 54.95290079950742
path: .spaces[0].metrics.halstead.vocabulary
old: 38.0
new: 23.0
path: .spaces[0].metrics.halstead.effort
old: 6428.711203968392
new: 989.1522143911336
path: .spaces[0].metrics.halstead.bugs
old: 0.1152465737823729
new: 0.03309183348496827
path: .spaces[0].metrics.cyclomatic.average
old: 3.0
new: 1.0
path: .spaces[0].metrics.cyclomatic.sum
old: 3.0
new: 2.0
path: .spaces[0].metrics.mi.mi_original
old: 90.04247072589395
new: 83.62121951673437
path: .spaces[0].metrics.mi.mi_visual_studio
old: 52.656415629177744
new: 48.90129796300255
path: .spaces[0].metrics.mi.mi_sei
old: 54.508433571837486
new: 93.56715682601052
path: .spaces[0].metrics.loc.ploc
old: 17.0
new: 8.0
path: .spaces[0].metrics.loc.blank
old: 2.0
new: 3.0
path: .spaces[0].metrics.loc.cloc
old: 0.0
new: 29.0
path: .spaces[0].metrics.loc.sloc
old: 19.0
new: 40.0
path: .spaces[0].metrics.loc.lloc
old: 7.0
new: 5.0
path: .spaces[0].metrics.cognitive.sum
old: 2.0
new: 0.0
path: .spaces[0].metrics.cognitive.average
old: 2.0
new: 0.0
path: .spaces[0].metrics.nargs.sum
old: 6.0
new: 0.0
path: .spaces[0].metrics.nargs.average
old: 6.0
new: 0.0
path: .spaces[0].metrics.nexits.average
old: 2.0
new: 0.0
path: .spaces[0].metrics.nexits.sum
old: 2.0
new: 0.0

### Code

    class NS_NO_VTABLE nsISupports {
     public:
      NS_DECLARE_STATIC_IID_ACCESSOR(NS_ISUPPORTS_IID)

      /**
       * @name Methods
       */

      //@{
      /**
       * A run time mechanism for interface discovery.
       * @param aIID [in] A requested interface IID
       * @param aInstancePtr [out] A pointer to an interface pointer to
       * receive the result.
       * @return NS_OK if the interface is supported by the associated
       * instance, NS_NOINTERFACE if it is not.
       *
       * aInstancePtr must not be null.
       */
      NS_IMETHOD QueryInterface(REFNSIID aIID, void** aInstancePtr) = 0;
      /**
       * Increases the reference count for this interface.
       * The associated instance will not be deleted unless
       * the reference count is returned to zero.
       *
       * @return The resulting reference count.
       */
      NS_IMETHOD_(MozExternalRefCountType) AddRef(void) = 0;

      /**
       * Decreases the reference count for this interface.
       * Generally, if the reference count returns to zero,
       * the associated instance is deleted.
       *
       * @return The resulting reference count.
       */
      NS_IMETHOD_(MozExternalRefCountType) Release(void) = 0;

      //@}
    };